GcmNetworkManager
サーバーにデータをプッシュするために定期的な同期タスクを実行するために使用しています。ただし、アプリを出荷した後、一部の電話で定期的なタスクが呼び出されないことに気付きました。私はすでにアプリをデバッグしましたが、これらの電話の一部であり、何も異常はありません。タスクをスケジュールするときにエラーやログはありませんが、単に呼び出されることはありません。
私のユーザーのほとんどはInfinix電話を持っています。
これの根本的な原因は何ですか?
タスクをスケジュールするコードは次のとおりです。
Task task = new PeriodicTask.Builder()
.setService(mClazz)
.setPeriod(TimeUnit.MILLISECONDS.toSeconds(period))
.setFlex(TimeUnit.MILLISECONDS.toSeconds(period / 5))
.setTag(TAG_SYNC)
.setUpdateCurrent(true)
.setRequiredNetwork(Task.NETWORK_STATE_CONNECTED)
.build();
mGcmNetworkManager.schedule(task);