Merge "Plumb attribution tag from Sensor Manager" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
4226338442
@@ -667,7 +667,7 @@ public class SystemSensorManager extends SensorManager {
|
||||
private abstract static class BaseEventQueue {
|
||||
private static native long nativeInitBaseEventQueue(long nativeManager,
|
||||
WeakReference<BaseEventQueue> eventQWeak, MessageQueue msgQ,
|
||||
String packageName, int mode, String opPackageName);
|
||||
String packageName, int mode, String opPackageName, String attributionTag);
|
||||
private static native int nativeEnableSensor(long eventQ, int handle, int rateUs,
|
||||
int maxBatchReportLatencyUs);
|
||||
private static native int nativeDisableSensor(long eventQ, int handle);
|
||||
@@ -689,7 +689,8 @@ public class SystemSensorManager extends SensorManager {
|
||||
if (packageName == null) packageName = "";
|
||||
mNativeSensorEventQueue = nativeInitBaseEventQueue(manager.mNativeInstance,
|
||||
new WeakReference<>(this), looper.getQueue(),
|
||||
packageName, mode, manager.mContext.getOpPackageName());
|
||||
packageName, mode, manager.mContext.getOpPackageName(),
|
||||
manager.mContext.getAttributionTag());
|
||||
mCloseGuard.open("dispose");
|
||||
mManager = manager;
|
||||
}
|
||||
|
||||
@@ -421,11 +421,18 @@ private:
|
||||
};
|
||||
|
||||
static jlong nativeInitSensorEventQueue(JNIEnv *env, jclass clazz, jlong sensorManager,
|
||||
jobject eventQWeak, jobject msgQ, jstring packageName, jint mode) {
|
||||
jobject eventQWeak, jobject msgQ, jstring packageName,
|
||||
jint mode, jstring opPackageName, jstring attributionTag) {
|
||||
SensorManager* mgr = reinterpret_cast<SensorManager*>(sensorManager);
|
||||
ScopedUtfChars packageUtf(env, packageName);
|
||||
String8 clientName(packageUtf.c_str());
|
||||
sp<SensorEventQueue> queue(mgr->createEventQueue(clientName, mode));
|
||||
|
||||
String16 attributionTagName("");
|
||||
if (attributionTag != nullptr) {
|
||||
ScopedUtfChars attrUtf(env, attributionTag);
|
||||
attributionTagName = String16(attrUtf.c_str());
|
||||
}
|
||||
sp<SensorEventQueue> queue(mgr->createEventQueue(clientName, mode, attributionTagName));
|
||||
|
||||
if (queue == NULL) {
|
||||
jniThrowRuntimeException(env, "Cannot construct native SensorEventQueue.");
|
||||
@@ -517,29 +524,20 @@ static const JNINativeMethod gSystemSensorManagerMethods[] = {
|
||||
};
|
||||
|
||||
static const JNINativeMethod gBaseEventQueueMethods[] = {
|
||||
{"nativeInitBaseEventQueue",
|
||||
"(JLjava/lang/ref/WeakReference;Landroid/os/MessageQueue;Ljava/lang/String;ILjava/lang/String;)J",
|
||||
(void*)nativeInitSensorEventQueue },
|
||||
{"nativeInitBaseEventQueue",
|
||||
"(JLjava/lang/ref/WeakReference;Landroid/os/MessageQueue;Ljava/lang/String;ILjava/lang/"
|
||||
"String;Ljava/lang/String;)J",
|
||||
(void *)nativeInitSensorEventQueue},
|
||||
|
||||
{"nativeEnableSensor",
|
||||
"(JIII)I",
|
||||
(void*)nativeEnableSensor },
|
||||
{"nativeEnableSensor", "(JIII)I", (void *)nativeEnableSensor},
|
||||
|
||||
{"nativeDisableSensor",
|
||||
"(JI)I",
|
||||
(void*)nativeDisableSensor },
|
||||
{"nativeDisableSensor", "(JI)I", (void *)nativeDisableSensor},
|
||||
|
||||
{"nativeDestroySensorEventQueue",
|
||||
"(J)V",
|
||||
(void*)nativeDestroySensorEventQueue },
|
||||
{"nativeDestroySensorEventQueue", "(J)V", (void *)nativeDestroySensorEventQueue},
|
||||
|
||||
{"nativeFlushSensor",
|
||||
"(J)I",
|
||||
(void*)nativeFlushSensor },
|
||||
{"nativeFlushSensor", "(J)I", (void *)nativeFlushSensor},
|
||||
|
||||
{"nativeInjectSensorData",
|
||||
"(JI[FIJ)I",
|
||||
(void*)nativeInjectSensorData },
|
||||
{"nativeInjectSensorData", "(JI[FIJ)I", (void *)nativeInjectSensorData},
|
||||
};
|
||||
|
||||
} //unnamed namespace
|
||||
|
||||
Reference in New Issue
Block a user