前言:本人小白,刚入职。处理一个线上的项目,客户反应有一些人安装完新版本后会闪退,有一些人正常,我们这边统计发现android版本高于7的人会出现这种情况。 处理流程: 2.要使用FileProvider,在manifrest.xml中添加(直接复制就可以): 3.在app里的res目录下新建一个xml包和一个xml文件,并添加: 到这步就结束了。 后记:虽然这个是很基本的东西,但是我处理两天才弄好。其实当时新版本已经下载到了内部存储里,就是更新完闪退,进去又要重新更新但是我已经把安装代码重构了,配置文件也都照着网上的更新了,依旧闪退。之后看日志,都是网上找不到的一些异常信息。最后下班回去,无意间点了android studio右下角的更新,然后发现编译出现异常,里面说我mainfrest文件里的权限位置不对,下图是正确位置: 我把它放在了application里面了,我去,弄了一天。 如果本文有用,请在下面扣个 1 。
1.拉下代码进行测试发现,会报file:xxxxx的错误 `<provider android:name="android.support.v4.content.FileProvider" android:authorities="${applicationId}.fileProvider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/> </provider>`
然后在这个文件里面添加一个权限:` <!-- android 7以上需要更新的权限 --> <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>` <!-- ps:一定要注意位置,如果报红就是你的位置不对直接放在文件最上面的位置,这里是我踩的坑 -->
`<paths xmlns:android="https://schemas.android.com/apk/res/android"> <root-path name="root_path" path="." /> <external-path name="Android/data/com.pipeline.oa" path="."/> <external-path path="." name="external_storage_root"/> </paths>`
4.把原来的安装代码进行重构,这段代码android10以上也能适配(不知道位置的话就找到执行下载的代码,它下面那个就是安装的):`File file = new File(Environment.getExternalStorageDirectory(), Version.UPDATE_SAVE_NAME); Intent intent1 = new Intent(Intent.ACTION_INSTALL_PACKAGE); Uri uri=null; if (Build.VERSION.SDK_INT >Build.VERSION_CODES.M) { String authority = "com.pipeline.oa.fileProvider";//这个就是刚才android:authorities=""里填的文字 uri = FileProvider.getUriForFile(WelcomeActivity.this, authority , file); intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent1.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); } else { intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); uri = Uri.fromFile(file); } intent1.setDataAndType(uri, "application/vnd.android.package-archive"); WelcomeActivity.this.startActivity(intent1); this.finish();`
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算