Loading core/java/android/hardware/location/ActivityChangedEvent.java +13 −0 Original line number Diff line number Diff line Loading @@ -76,4 +76,17 @@ public class ActivityChangedEvent implements Parcelable { parcel.writeInt(activityRecognitionEventArray.length); parcel.writeTypedArray(activityRecognitionEventArray, flags); } @Override public String toString() { StringBuilder builder = new StringBuilder("[ ActivityChangedEvent:"); for (ActivityRecognitionEvent event : mActivityRecognitionEvents) { builder.append("\n "); builder.append(event.toString()); } builder.append("\n]"); return builder.toString(); } } core/java/android/hardware/location/ActivityRecognitionEvent.java +9 −0 Original line number Diff line number Diff line Loading @@ -75,4 +75,13 @@ public class ActivityRecognitionEvent implements Parcelable { parcel.writeInt(mEventType); parcel.writeLong(mTimestampNs); } @Override public String toString() { return String.format( "Activity='%s', EventType=%s, TimestampNs=%s", mActivity, mEventType, mTimestampNs); } } core/java/android/hardware/location/ActivityRecognitionHardware.java +13 −11 Original line number Diff line number Diff line Loading @@ -134,8 +134,8 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St * Called by the Activity-Recognition HAL. */ private void onActivityChanged(Event[] events) { int size = mSinks.beginBroadcast(); if (size == 0 || events == null || events.length == 0) { if (events == null || events.length == 0) { Log.d(TAG, "No events to broadcast for onActivityChanged."); return; } Loading @@ -151,6 +151,7 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St ActivityChangedEvent activityChangedEvent = new ActivityChangedEvent(activityRecognitionEventArray); int size = mSinks.beginBroadcast(); for (int i = 0; i < size; ++i) { IActivityRecognitionHardwareSink sink = mSinks.getBroadcastItem(i); try { Loading Loading @@ -181,8 +182,8 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St return INVALID_ACTIVITY_TYPE; } int supporteActivitiesLength = mSupportedActivities.length; for (int i = 0; i < supporteActivitiesLength; ++i) { int supportedActivitiesLength = mSupportedActivities.length; for (int i = 0; i < supportedActivitiesLength; ++i) { if (activity.equals(mSupportedActivities[i])) { return i; } Loading @@ -198,7 +199,7 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St mContext.enforceCallingPermission(HARDWARE_PERMISSION, message); } private static String[] fetchSupportedActivities() { private String[] fetchSupportedActivities() { String[] supportedActivities = nativeGetSupportedActivities(); if (supportedActivities != null) { return supportedActivities; Loading @@ -211,14 +212,15 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St static { nativeClassInit(); } private static native void nativeClassInit(); private static native void nativeInitialize(); private static native void nativeRelease(); private static native boolean nativeIsSupported(); private static native String[] nativeGetSupportedActivities(); private static native int nativeEnableActivityEvent( private native void nativeInitialize(); private native void nativeRelease(); private native String[] nativeGetSupportedActivities(); private native int nativeEnableActivityEvent( int activityType, int eventType, long reportLatenceNs); private static native int nativeDisableActivityEvent(int activityType, int eventType); private static native int nativeFlush(); private native int nativeDisableActivityEvent(int activityType, int eventType); private native int nativeFlush(); } core/jni/android_hardware_location_ActivityRecognitionHardware.cpp +3 −8 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ static void activity_callback( JNIEnv* env = NULL; int result = attach_thread(&env); if (result != JNI_OK) { ALOGE("Unable to attach thread with JNI."); return; } Loading Loading @@ -215,7 +216,7 @@ static jobjectArray get_supported_activities(JNIEnv* env, jobject obj) { return NULL; } jclass string_class = env->FindClass("java/lang/String;"); jclass string_class = env->FindClass("java/lang/String"); if (string_class == NULL) { ALOGE("Unable to find String class for supported activities."); return NULL; Loading @@ -229,14 +230,8 @@ static jobjectArray get_supported_activities(JNIEnv* env, jobject obj) { for (int i = 0; i < list_size; ++i) { const char* string_ptr = const_cast<const char*>(list[i]); jsize string_length = strlen(string_ptr); jstring string = env->NewString((const jchar*) string_ptr, string_length); jstring string = env->NewStringUTF(string_ptr); env->SetObjectArrayElement(string_array, i, string); // log debugging information in case we need to try to trace issues with the strings if (string_length) { ALOGD("Invalid activity (index=%d) name size: %d", i, string_length); } } return string_array; Loading location/lib/java/com/android/location/provider/ActivityChangedEvent.java +13 −0 Original line number Diff line number Diff line Loading @@ -40,4 +40,17 @@ public class ActivityChangedEvent { public Iterable<ActivityRecognitionEvent> getActivityRecognitionEvents() { return mActivityRecognitionEvents; } @Override public String toString() { StringBuilder builder = new StringBuilder("[ ActivityChangedEvent:"); for (ActivityRecognitionEvent event : mActivityRecognitionEvents) { builder.append("\n "); builder.append(event.toString()); } builder.append("\n]"); return builder.toString(); } } Loading
core/java/android/hardware/location/ActivityChangedEvent.java +13 −0 Original line number Diff line number Diff line Loading @@ -76,4 +76,17 @@ public class ActivityChangedEvent implements Parcelable { parcel.writeInt(activityRecognitionEventArray.length); parcel.writeTypedArray(activityRecognitionEventArray, flags); } @Override public String toString() { StringBuilder builder = new StringBuilder("[ ActivityChangedEvent:"); for (ActivityRecognitionEvent event : mActivityRecognitionEvents) { builder.append("\n "); builder.append(event.toString()); } builder.append("\n]"); return builder.toString(); } }
core/java/android/hardware/location/ActivityRecognitionEvent.java +9 −0 Original line number Diff line number Diff line Loading @@ -75,4 +75,13 @@ public class ActivityRecognitionEvent implements Parcelable { parcel.writeInt(mEventType); parcel.writeLong(mTimestampNs); } @Override public String toString() { return String.format( "Activity='%s', EventType=%s, TimestampNs=%s", mActivity, mEventType, mTimestampNs); } }
core/java/android/hardware/location/ActivityRecognitionHardware.java +13 −11 Original line number Diff line number Diff line Loading @@ -134,8 +134,8 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St * Called by the Activity-Recognition HAL. */ private void onActivityChanged(Event[] events) { int size = mSinks.beginBroadcast(); if (size == 0 || events == null || events.length == 0) { if (events == null || events.length == 0) { Log.d(TAG, "No events to broadcast for onActivityChanged."); return; } Loading @@ -151,6 +151,7 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St ActivityChangedEvent activityChangedEvent = new ActivityChangedEvent(activityRecognitionEventArray); int size = mSinks.beginBroadcast(); for (int i = 0; i < size; ++i) { IActivityRecognitionHardwareSink sink = mSinks.getBroadcastItem(i); try { Loading Loading @@ -181,8 +182,8 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St return INVALID_ACTIVITY_TYPE; } int supporteActivitiesLength = mSupportedActivities.length; for (int i = 0; i < supporteActivitiesLength; ++i) { int supportedActivitiesLength = mSupportedActivities.length; for (int i = 0; i < supportedActivitiesLength; ++i) { if (activity.equals(mSupportedActivities[i])) { return i; } Loading @@ -198,7 +199,7 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St mContext.enforceCallingPermission(HARDWARE_PERMISSION, message); } private static String[] fetchSupportedActivities() { private String[] fetchSupportedActivities() { String[] supportedActivities = nativeGetSupportedActivities(); if (supportedActivities != null) { return supportedActivities; Loading @@ -211,14 +212,15 @@ public class ActivityRecognitionHardware extends IActivityRecognitionHardware.St static { nativeClassInit(); } private static native void nativeClassInit(); private static native void nativeInitialize(); private static native void nativeRelease(); private static native boolean nativeIsSupported(); private static native String[] nativeGetSupportedActivities(); private static native int nativeEnableActivityEvent( private native void nativeInitialize(); private native void nativeRelease(); private native String[] nativeGetSupportedActivities(); private native int nativeEnableActivityEvent( int activityType, int eventType, long reportLatenceNs); private static native int nativeDisableActivityEvent(int activityType, int eventType); private static native int nativeFlush(); private native int nativeDisableActivityEvent(int activityType, int eventType); private native int nativeFlush(); }
core/jni/android_hardware_location_ActivityRecognitionHardware.cpp +3 −8 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ static void activity_callback( JNIEnv* env = NULL; int result = attach_thread(&env); if (result != JNI_OK) { ALOGE("Unable to attach thread with JNI."); return; } Loading Loading @@ -215,7 +216,7 @@ static jobjectArray get_supported_activities(JNIEnv* env, jobject obj) { return NULL; } jclass string_class = env->FindClass("java/lang/String;"); jclass string_class = env->FindClass("java/lang/String"); if (string_class == NULL) { ALOGE("Unable to find String class for supported activities."); return NULL; Loading @@ -229,14 +230,8 @@ static jobjectArray get_supported_activities(JNIEnv* env, jobject obj) { for (int i = 0; i < list_size; ++i) { const char* string_ptr = const_cast<const char*>(list[i]); jsize string_length = strlen(string_ptr); jstring string = env->NewString((const jchar*) string_ptr, string_length); jstring string = env->NewStringUTF(string_ptr); env->SetObjectArrayElement(string_array, i, string); // log debugging information in case we need to try to trace issues with the strings if (string_length) { ALOGD("Invalid activity (index=%d) name size: %d", i, string_length); } } return string_array; Loading
location/lib/java/com/android/location/provider/ActivityChangedEvent.java +13 −0 Original line number Diff line number Diff line Loading @@ -40,4 +40,17 @@ public class ActivityChangedEvent { public Iterable<ActivityRecognitionEvent> getActivityRecognitionEvents() { return mActivityRecognitionEvents; } @Override public String toString() { StringBuilder builder = new StringBuilder("[ ActivityChangedEvent:"); for (ActivityRecognitionEvent event : mActivityRecognitionEvents) { builder.append("\n "); builder.append(event.toString()); } builder.append("\n]"); return builder.toString(); } }