WVector / AppUpdate

🚀 Android 版本更新 🚀 a library for android version update 🚀
3.54k stars 747 forks source link

8.0系统通知栏不显示下载进度,下载完成不会弹出安装界面 #49

Open logney opened 6 years ago

tosslife commented 6 years ago

Android 8.0 Oreo 中,Google 移除掉了容易被滥用的“允许位置来源”应用的开关,在安装 Play Store 之外的第三方来源的 Android 应用的时候,竟然没有了“允许未知来源”的检查框,如果你还是想要安装某个被自己所信任的开发者的 app,则需要在每一次都手动授予“安装未知应用”的许可。 适配Android 8.0: 1.清单文件添加安装未知来源应用的权限 android.permission.REQUEST_INSTALL_PACKAGES 2.启动APP之前就做好权限预申请(动态申请权限的框架很多) 希望能帮到你

hezhipengzipp commented 6 years ago

什么时候能适配8.0呀,很急

ghost commented 6 years ago

同问

a451492549 commented 6 years ago

8.0系统通知栏不显示下载进度 适配 android 8.0 NotificationChannel

Jiiiiiin commented 6 years ago

8.0 我加了这行代码之后,能解决下载完安装包之后,再次进入就可以安装,但是初次下载完毕点击安装还是失败:

 @Override
                    public void onResponse(File response, int id) {
                        LoggerProxy.e("onResponse %s", response.exists());
                        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                            DeviceUtil.generateInstallPackages(ACTIVITY, (granted) -> {
                                LoggerProxy.e("onResponse granted %s", granted);
                                if (granted) {
                                    callback.onResponse(response);
                                } else {
                                    ToastUtils.showLong("你未授权应用安装所需权限,导致无法进行应用更新");
                                }
                            });
                        } else {
                            callback.onResponse(response);
                        }
                    }

即在public class UpdateAppHttpUtil implements HttpManager, HttpManager的下载文件结束之后。 仅供大家参考,还有一个连接也可以参考一下,我正在试试:https://github.com/yjfnypeu/UpdatePlugin/issues/51

大家如果找到解决方案,请在这个帖子发一下解决方案哈。

@hezhipengzipp @a451492549

Jiiiiiin commented 6 years ago

还有一种急救措施,应该就是把编译目标改成小于26,大家可以试试,作者不知道啥时候能修复,哎 @logney

Jiiiiiin commented 6 years ago

这样应该就能搞定 8.0 不允许未知引用安装的问题,但是通知栏还是需要作者改一下。

Jiiiiiin commented 6 years ago

插件更新到compile 'com.qianwen:update-app:3.4.0之后,对主项目进行了如下修改 我直接修改版本号导致找不到依赖,必须要把应用修改进行如下修改

@WVector 不知道其他用户有没有遇到这种情况。