2016-12-19 8 views
1

メソッドを1日1回呼び出すための同期アダプタを使用したいと考えています。私がContent Providerを必要としないので、私は同期アダプターの仕事をするために単にダミープロバイダーを定義しました。問題は、私が時間のために設定したものに関係なく約10分ごとに同期トリガが発生し、一部のデバイスではトリガしないことです。正確にすべてのデバイスで動作させるにはどうすればいいですか?Android同期アダプタが10分ごとにトリガする

final Account account = new Account(username, "com.example.shop"); 
Bundle userData = new Bundle(); 
accountManager.addAccountExplicitly(account, "", userData); 
// initial sync adapter 
String AUTHORITY = "com.example.shop.syncAdapter.DummyProvider"; 
ContentResolver.setIsSyncable(account, AUTHORITY, 1); 
ContentResolver.setSyncAutomatically(account, AUTHORITY, true); 
ContentResolver.addPeriodicSync(account, AUTHORITY, Bundle.EMPTY, 86400); 

SyncAdapter:た​​ぶん

@Override 
public void onPerformSync(Account account, Bundle extras, String authority, 
          ContentProviderClient provider, SyncResult syncResult) { 
    Log.e("sync", "sync successful"); 
} 

答えて

0

回避策これはあなたのための緊急の場合:

アカウントはまた、単にダミーである場合(それはそうと)、あなたが使用することができますAlarmManager同期アダプタパターンの代わりに使用します。ダミーのコンテンツプロバイダなどは必要ありません。 AlarmManagerのメッセージをいつ呼び出すかはtimerに設定できます。

AlarmManagerを使用する場合は、sync androidシステムの機能は使用できません。

関連する問題