【发布时间】:2018-01-17 11:45:02
【问题描述】:
我开发了一个应用程序,它可以跟踪您使用相机点击的图像。直到 Marshmallow 应用程序跟踪照片,但在 Nougat 中使用相同的代码应用程序无法跟踪我点击的新图片。
我的 CameraReceiver 类是
public class CameraReceiver extends BroadcastReceiver {
private String pathSplit;
public void onReceive(Context context, Intent intent) {
Cursor cursor = context.getContentResolver().query(intent.getData(),
null, null, null, null);
if (cursor != null) {
cursor.moveToFirst();
String image_path = cursor.getString(cursor.getColumnIndex("_data"));
String MediaType = intent.getAction().equals("android.hardware.action.NEW_VIDEO") ? "VIDEO" : "IMAGE";
FilesObservers.postDataCreateEvent("CREATE", image_path, true,MediaType);
cursor.close();
}
}
public IntentFilter getCameraFilters() {
IntentFilter lsIntentFilter = new IntentFilter();
try {
lsIntentFilter.addDataType("image/*");
} catch (IntentFilter.MalformedMimeTypeException e) {
e.printStackTrace();
}
lsIntentFilter.addAction("com.android.camera.NEW_PICTURE");
lsIntentFilter.addCategory("android.intent.category.DEFAULT");
return lsIntentFilter;
}
}
在清单中
<receiver android:name="com.sys.observers.CameraReceiver" />
【问题讨论】:
-
从 API 24 开始,它已停止支持这些广播。但是您可以使用 JobInfo 和 JobParameters 来替代它。 developer.android.com/topic/performance/….
-
嗨@nTri,你能根据你提供的链接指导我的代码应该如何,我已经通过但我无法理解。谢谢
-
目标 API 版本 23 正常工作
-
嗨@VishalBhut,我需要让它适用于牛轧糖,所以我的目标是API 24,任何示例代码都会有帮助。
-
嗨@nTri,你能说一下如何使用JobInfo.Builder.addTriggerContentUri(JobInfo.TriggerContentUri)
标签: android android-intent android-camera