gpt4 book ai didi

android - 如何在相机应用拍摄新照片时生成通知?

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:56 24 4
gpt4 key购买 nike

当从相机应用程序拍摄新照片时,我想在我的应用程序中创建一个通知。我想在我的应用程序未运行时实现此目的。我正在使用广播接收器来执行此操作。这是我的代码...

在 Android list 中..

<receiver
android:name=".receivers.CameraEventReceiver"
android:label="CameraEventReceiver"
android:enabled="true">
<intent-filter>
<action android:name="android.hardware.action.NEW_PICTURE" />

<data android:mimeType="image/*" />
</intent-filter>
</receiver>

在我的接收器类中

public class CameraEventReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){

NotificationChannel channel = new NotificationChannel("CHANNEL_ID", "my channel name", NotificationManager.IMPORTANCE_HIGH);
manager.createNotificationChannel(channel);
}
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, "CHANNEL_ID")
.setColor(ContextCompat.getColor(context, R.color.colorPrimary))
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle("Picture Taken")
.setContentText("here is the uri : "+intent.getData())
.setDefaults(NotificationCompat.DEFAULT_VIBRATE)
.setAutoCancel(true);

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN && Build.VERSION.SDK_INT < Build.VERSION_CODES.O){
builder.setPriority(NotificationCompat.PRIORITY_HIGH);
}

manager.notify(222, builder.build());
}
}

当应用程序运行时,它在 Android 6.0 上工作正常......但它不适用于较新的版本。 我该怎么做才能实现这一目标?我希望它支持 android 版本大于 4.1 (JELLY_BEAN) 的所有设备

提前致谢

最佳答案

But it is not working for newer versions.

正确。不再支持这些广播。参见 the Android 7.0 release notes .

What can I do to achieve this?

自己拍照,无论是使用 ACTION_IMAGE_CAPTURE、相机 API 还是库(例如,Fotoapparat、CameraKit-Android)。

该广播没有直接替代品,并且相机应用程序也不需要触发该广播。

你可以使用 JobScheduler and addTriggerContentUri()监视 MediaStore 的变化。但是,我不知道您如何将其限制为仅由相机应用拍摄的照片。

关于android - 如何在相机应用拍摄新照片时生成通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49590210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com