Android 8.0 适配的坑

字数 259阅读 460

场景 :  app普通通知  app更新

一. 通知

      1. 普通通知无法显示

if(Build.VERSION.SDK_INT>=26) {

NotificationChannel channel =newNotificationChannel(notificationId,name, NotificationManager.IMPORTANCE_HIGH);

manager.createNotificationChannel(channel);

Notification.Builder builder =newNotification.Builder(context,notificationId);  //关键一步

builder.setSmallIcon(R.mipmap.ic_launcher);

notification= builder.build();

notification.contentView=newRemoteViews(context.getPackageName(),

R.layout.view_notify_item);

manager.notify(100,notification);

}else{

notify=newNotification();

notify.icon= R.mipmap.ic_launcher;

// 通知栏显示所用到的布局文件

notify.contentView=newRemoteViews(context.getPackageName(),

R.layout.view_notify_item);

manager.notify(100,notify);

}

2.    8.0后 通知无法通过 setSound()  来设置自定义声音  

    且  无法关闭通知的声音  以至于我更新app时利用通知栏显示进度的方式不科学了  因为会一直有通知的提示音 (0 - 100  一百下  恐怖!)

二. apk安装

也是在更新环节中  apk下载完成 按照8.0之前的方法来调用安装会有问题 

方案:  在清单文件中加一个权限

<uses-permission android:name="android.permission.R"


还有 关于声音的问题有没有方案 ??

推荐阅读更多精彩内容