1

アクティビティ認識追跡を正常にセットアップしましたが、アクティビティ更新の間隔を使用する必要があります。

ActivityRecognition.ActivityRecognitionApi.requestActivityUpdates(
            googleApiClient,
            updateInterval,
            activityRecognitionPendingIntent)
            .setResultCallback(this);

これを回避し、必要なときに活動を依頼する方法はありますか?

例: ActivityRecognition.getCurrentActivities();?

4

2 に答える 2

0

質問に完全に答えるにはさらに情報が必要ですが、確認すべき事項のチェックリストを次に示します。

1.GoogleApiClient.Builder API 呼び出しを行いましたか? コードサンプルで使用されているパラメーター googleApiClient が与えられていると仮定します。

  1. あなたが呼び出しているクラスは、GoogleApiClient.ConnectionCallbacks、GoogleApiClient.OnConnectionFailedListener、ResultCallback を実装していますか

  2. ActivityRecognitionPendingIntent メソッドは新しい Intent をインスタンス化し、それを使用して PendingIntent.getService を呼び出しますか?

  3. pendingIntent.getService 呼び出しは PendingIntent.FLAG_UPDATE_CURRENT を使用しますか

于 2016-03-22T17:33:28.080 に答える
0

現在のアクティビティとは異なる場合にのみ、アクティビティの変更を通知したい場合は、次の手順を実行します。

  1. 初期アクティビティをキャプチャし、列挙型を永続的な方法 (静的変数、SharedPreferences など) で保存します。
  2. 次の更新を取得した場合は、それが最後のものと同じ列挙型であるかどうかを確認してください。そうでない場合は、新しい活動を報告してください。同じならそのまま通過。
  3. 間隔を、更新を行う頻度に設定します。遅延を長くすると、省電力が大幅に改善されます。
于 2016-04-15T18:45:01.627 に答える