2016-05-31 13 views
0

おはよう、Androidのコールの同期。各アプリ起動時の機能

私はSQLiteにデータを保存するアンドロイドアプリを持っています。 このアプリはMYSQLデータベースのこのデータを投稿httpで取得します。

各アプリの起動時(リストビューのアクティビティが表示される場合)には、httpポスト機能が実行されることを認識したいと思います。

ここでこのコードを入力する必要がありますか? 私のiOSアプリでは、これをAppDelegateに入れることができます。

+0

どのようにアプリの開始範囲ですか?私は、バックグラウンドとフォアグラウンドになる、またはユーザーが最近のアプリを起動した、またはosを殺して、agianを再起動したことを意味します。 – Sush

答えて

-1

onCreate()でこれを行うことができます。

+0

onCreate()は、アクティビティが再作成されるたびに呼び出され、アプリケーションの開始時に – earthw0rmjim

+0

だけでなく、StartUpActivityという名前のアクティビティを作成して、アプリケーションの起動時に呼び出すことができます。あなたはこのアクティビティにスプラッシュを表示することができ、バックグラウンドではすべてのものを行うことができます。バックグラウンドで実行したいことをすべて実行したら、次の画面に移動できます。 –

0

応答が処理されListViewがそのデータで更新されるまで、毎回進行状況バーを表示します。

データを取り込むメソッドを呼び出すことによって、onCreate()メソッドで行うことができます。 もちろんバックグラウンドスレッドで実行します。これにはokHTTPライブラリを使用してください。活動が再開したときに呼び出す

0

アプリケーションクラスを作成したときにアプリケーションの起動/再起動一回呼び出す)(manifiestファイル

Application.onCreateに登録しなく

import android.app.Application; 



    public class MyApplication extends Application { 

     //it's call when application start ; 
     @Override 
     public void onCreate() { 
      super.onCreate(); 
     // do your work here 
     } 

    } 

AndroidManifiest.xml

<application 
     android:name="com.xyz.MyApplication" 
. 
. 
. 
    > 

</application> 
0

このようなことをするには、カスタムApplicationクラスを作成する必要があります。アクティビティが開始され、アプリケーションがロードされていない場合、onCreate()メソッドが呼び出されるためです。

public class CustomApplication extends Application { 

    @Override 
    public void onCreate() { 
     super.onCreate(); 
     callHttpPost(); 
    } 

    private void callHttpPost(){ 
     // Do Your Stuff 
    } 

} 

また、マニフェストファイルにアプリケーション名を設定します。

<application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:name=".CustomApplication" 
     android:theme="@style/AppTheme"> 

     <!-- All your Activity goes here --> 

</application> 
0

あなたの要件が非常に厳しい場合は、いくつかのサードパーティライブラリがあります。 、あらゆる活動の前に、アプリケーションが起動されたときに呼び出されます:

は、さもなければ、あなたはあなた自身のApplicationクラスを作成するために、アプリケーションを拡張する必要があり、かつ

public void onCreate() 

ドキュメントがアプリケーションクラスに以下の方法で呼び出しを行います サービス、または受信者オブジェクト(コンテンツプロバイダを除く)が に作成されました。この 関数で費やされた時間は、プロセスの最初の アクティビティ、サービス、または受信者の開始パフォーマンスに直接影響するため、できるだけ早く実装する必要があります(たとえば、 は遅延初期化を使用します)。この メソッドをオーバーライドする場合は、必ずsuper.onCreate()を呼び出してください。

関連する問題