Android 10(Api 29)新特性适配 – 禁止后台启动Activity
官方文档:https://developer.android.google.cn/preview/privacy/background-activity-starts
现象描述
- AndroidQ上,后台启动Activity会被系统忽略,不管targetSdkVersion多少
- AndroidQ上,即使应用有前台服务也不行
- AndroidQ以下版本没影响
解决方法
发送全屏通知:
//AndroidManifest 声明新权限,不用动态申请
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT"/>
Intent intent = new Intent(this, ScopedStorageActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this,
REQ_CODE, intent, PendingIntent.FLAG_UPDATE_CURRENT);
Notification notification = new NotificationCompat.Builder(this, Constants.CHANNEL_ID)
.setSmallIcon(R.drawable.ic_launcher_foreground)
.setContentTitle("Incoming call")
.setContentText("(919) 555-1234")
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setCategory(NotificationCompat.CATEGORY_ALARM)
//设置全屏通知后,发送通知直接启动Activity
.setFullScreenIntent(pendingIntent, true)
.build();
NotificationManager manager = getSystemService(NotificationManager.class);
manager.notify(10, notification);
但是:在华为mate20(Api-28)上需要到设置中打开横幅通知;原生Android Q上有效
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/18/android-10-api-29-new-feature-adaptation-prohibit-background-launch-of-activities/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
Android 10(Api 29)新特性适配 – 禁止后台启动Activity
官方文档:https://developer.android.google.cn/preview/privacy/background-activity-starts
现象描述
AndroidQ上,后台启动Activity会被系统忽略,不管tar……
文章目录
关闭
共有 0 条评论