Snapshot API - 未触发ResultCallBack

时间:2018-02-25 22:03:16

标签: android api firebase callback google-awareness

我在Android中使用Google Snapshot API。

我使用此代码获取用户的活动并将其存储到Firebase。

//Get user's current activity
private void myCurrentActivity(final String timestamp) {
    if (checkPermission()) {
        Awareness.SnapshotApi.getDetectedActivity(mGoogleApiClient)
                .setResultCallback(new ResultCallback<DetectedActivityResult>() {
                    @Override
                    public void onResult(@NonNull DetectedActivityResult detectedActivityResult) {
                        if (detectedActivityResult.getStatus().isSuccess()) {
                            Log.d(TAG, "myCurrentActivity - SUCCESS");
                            ActivityRecognitionResult activityRecognitionResult = detectedActivityResult.getActivityRecognitionResult();
                            databaseReference.child(getUID(getApplicationContext(), "myCurrentActivity")).child(timestamp).child("activity").setValue(getActivityString(activityRecognitionResult.getMostProbableActivity().getType()));
                            Log.d(TAG, "Most Propable Activity : " + getActivityString(activityRecognitionResult.getMostProbableActivity().getType()));
                        } else {
                            Log.d(TAG, "myCurrentActivity - FAILURE");
                            databaseReference.child(getUID(getApplicationContext(), "myCurrentActivity")).child(timestamp).child("activity").setValue("null");
                        }
                    }
                });
    }
}

问题是onResult函数在运行时从不执行。

你有什么想法可能导致这个吗?

谢谢。

编辑:我只是在模拟器中运行它并且它没有问题。这可能与我的设备有关吗?

0 个答案:

没有答案