android7.0 apk检查更新出错

一下是错误信息

 java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getCanonicalPath()' on a null object reference
    at android.support.v4.content.FileProvider$SimplePathStrategy.getUriForFile(FileProvider.java:695)
    at android.support.v4.content.FileProvider.getUriForFile(FileProvider.java:400)
    at com.zeyi.up.UpdateManager.installApk(UpdateManager.java:309)
    at com.zeyi.up.UpdateManager.access$700(UpdateManager.java:37)
    at com.zeyi.up.UpdateManager$6.handleMessage(UpdateManager.java:293)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:160)
    at android.app.ActivityThread.main(ActivityThread.java:6200)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:874)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:764)

1个回答

很明显空指针异常了,你调用getCanonicalPath()这个方法的对象是空的,你检查下!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
android7.0 apk检查更新出错
n一下是错误信息n```n java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getCanonicalPath()' on a null object referencen at android.support.v4.content.FileProvider$SimplePathStrategy.getUriForFile(FileProvider.java:695)n at android.support.v4.content.FileProvider.getUriForFile(FileProvider.java:400)n at com.zeyi.up.UpdateManager.installApk(UpdateManager.java:309)n at com.zeyi.up.UpdateManager.access$700(UpdateManager.java:37)n at com.zeyi.up.UpdateManager$6.handleMessage(UpdateManager.java:293)n at android.os.Handler.dispatchMessage(Handler.java:102)n at android.os.Looper.loop(Looper.java:160)n at android.app.ActivityThread.main(ActivityThread.java:6200)n at java.lang.reflect.Method.invoke(Native Method)n at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:874)n at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:764)nn```nn
apk检查更新下载安装
package com.example.boot.utils; import android.app.Activity; import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; import android.content.
Android7.0版本更新无法安装apk
权限   在适配7.0手机的时候,发现部分手机下载到最新版本以后,无法自动安装问题.   通过查找才发现, 在AndroidAPI23以后, 部分权限要动态获取. 也就是说在下载前需要动态获取文件的读写权限,在小米5适配出现这样问题   从前几届谷歌大会,我们可以知道, 随着android版本越高 , android对于移动设备隐私的保护力度越来越大, 从Android6.0引入动态权限控制到An...
Android7.0之安装apk文件
由于Android7.0不能直接访问Uri导致安装apk失败
下载安装APK(兼容Android7.0)
我们使用手机的时候经常会看到应用程序提示升级,大部分应用内部都需要实现升级提醒和应用程序文件(APK文件)下载。一般写法都差不多,比如在启动app的时候,通过api接口获得服务器最新的版本号,然后和本地的版本号比较,来判断是否需要弹出提示框下载,当然也可以通过推送的自定义消息来实现。我们这里主要讨论的是应用程序下载,并在通知栏提醒下载完成。实现过程大致分为三步:创建一个service在servic
Android7.0下载Apk自动安装
下载APK并自动安装1. 整体需求 下载APK文件 使用DownloadManager来下载 在应用界面中展示下载进度 安装下载后的APK文件 root模式: 可以自动安装,不需要用户主动点击 正常模式: 弹出安装应用页面,需要兼容7.0以上版本 2. DownloadManagerDownloadManager是Android提供的用于下载的类,使用起来比较简单,它包含两个静态内部类Downl
返回APK版本号用于检查更新
--------------------------------返回程序版本号 /** * 返回程序版本号 */ private String getVersion() { // 得到管理手机的APK PackageManager pm = getPackageManager(); try { // 得到APK清单文件 PackageInfo info = pm.getPacka
App启动检查更新下载安装apk
现在很多的App中都会有一个检查版本的功能。例如斗鱼TV App的设置界面下:                 当我们点击检查更新的时候,就会向服务器发起版本检测的请求。一般的处理方式是:服务器返回的App版本与当前手机安装的版本号进行对比。(1)如果服务器所返回的版本号大于当前App版本号那么此时手机所安装的App不是最新版。可以提示用户升级。(2)如果不大于当前版本号,可以提示用户为最新版本:...
Android7.0 安装apk更新包的适配
项目中发现在自动更新功能的时候,下载好了apk的文件后在android7.0系统中不能自动跳到安装界面,后来百度了一番解决了问题。原因:我们先来看看产生的原因:当我们在7.0上使用系统服务去下载apk并且试图安装时,有可能由于权限问题导致安装失败。 每个Android版本的发布,对于安全性问题的要求越来越高,也为Android程序员增加了额外的工作量。Android6.0引入动态权限控制(Run
Android7.0 更新APK报错适配
共3步Step1根据安卓版本进行适配不同的安装包的打开方式File file = new File(apkPath);//更新包文件 Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW);if (Build.VERSION.SDK_INT >= 24) { // Android7.0及以上版本 Log.d
android7.0弹出apk安装界面
安卓7.0从服务器下载apk之后,怎么弹出让用户安装的界面,7.0以下我会,intent调用的,还有其他方法吗?7.0以上怎么搞。往大神详解!!
android7.0更新安装apk的方法
StrictMode模式 从android7.0开始强制启用StrictMode“严苛模式”。StrictMode是在android2.3引进的类。当时它的作用是作为一个开发工具用的,开发者可以开发者选项中打开它,它可以捕捉到在主线程序发生的磁盘IO读写、网络访问发生的意外,通常这个意外都是ANR(android not response),当时可以用这个工具检测出这些意外,代码就可以做调整:将磁...
android7.0调用系统相机出错
1.在清单注册文件中的application加上这段话2.我们在res底下创建个xml的文件夹下面创建个xml文件内容如下3.在调用相机那把上面注释的那句话变成下面那句话注意:BuildConfig.APPLICATION_ID一定不能倒错包,一定要和清单文件中的包名对应然后我们就可以愉快的调用系统相机了...
检查更新
#pragma mark - 检查更新   - (void)checkUpdateWithAPPID:(NSString *)APPID   {       //获取当前应用版本号       NSDictionary *appInfo = [[NSBundle mainBundle] infoDictionary];           NSString *currentVersio...
Android中检查更新APK,以及下载APK安装。
APK检查更新,权限管理,APP下载
Android开发 android7.0安装apk文件的姿势
最近看到一个库,觉得有点意思,就下载源码编译了一下,结果发现打不开apk包,报错为: Caused by: android.os.FileUriExposedException: file:///storage/emulated/0/Android/data/cn.bingoogolapple.update.demo/files/apk/BGAUpdateDemo_v1.0.0.apk e
Android7.0、8.0应用内安装apk实现
最近,公司线上项目发现,部分手机应用内更新下载apk后安装无反应的问题。由于测试我并未参与,得知同事的问题描述后误认为是部分机型的兼容性问题,费了半天劲。最后才发现是Andorid8.0权限问题,很是恼火啊,哈哈。鉴于此,还是把不同Android版本正确发起应用内安装的实现分享给大家。 首先将现有的Android版本进行分一下界限,Android 1.x~6.x 和Android 7.x 及An...
Android7.0安装apk并兼容之前版本
一、概述背景:在Android7.0安装apk的时候,由于对安全性进行了提升,所以如果在Android7.0版本的手机上用之前的方式进行安装,则会报出android.os.FileUriExposedException异常。二、7.0之前以及7.0安装方式对比注:明天再写,今天先放这儿。三、代码本人写了一个下载demo,供大家参考。 地址:https://github.com/yangshaope
Android7.0 禁止安装第三方apk (mtk)
在源码文件中 device/wisky/wisky8783_f/system.prop persist.sys.enableInstallApk=true            //true:允许安装  false:禁止安装
检查更新demo
全新的检查更新demo文件中有集成步骤以及文档!全新的检查更新demo文件中有集成步骤以及文档!
app 检查更新
一篇讲述app检查更新的文章    挺不错的 应用到了工作中     http://www.tuicool.com/articles/aENF32
检查更新程序问题
是否能在主进程已结束时,保持子进程继续工作?rn例:rn .....rn 检查更新:rn 如果程序更新将先关闭Isolator.exe运行程序,然后把新的Isolator.exe覆盖到当前目录下,所以先要杀掉Isolator进程,但同时打开的更新窗体也被关了,这种情况该怎么处理,谢谢rn '杀掉进程rn Dim Pcs() As Processrn Pcs = Process.GetProcessesByName("Isolator.exe")rn Dim i As Integerrn For i = 0 To Pcs.Length - 1rn Pcs(i).Kill()rn Nextrn Me.Show()rnrn Application.DoEvents()rn Me.Focus()rn注,这里的Me是Isolator.exe程序菜单Click事件打的窗体AutoUpdateForm rn Dim myFrom As New AutoUpdateFormrn myFrom.Show()rn
检查更新实现
App更新是应用当中很常见的一个功能,基本上联网的app都应该具备这样的功能,对于更新迭代比较的产品,应用更新升级能让用户以快的速度体验到新功能和特性,对提高拉新留存率有不错的效果。本次课程来教会大家如何去实现这样的一个功能,分析具体的应用场景和技术,来让开发者满足产品的需求。
android 检查更新
android 自己写的一套检查更新的代码
iOS检查更新
#pragma -mark  检查更新 -(void)CheckVersionUpdate {          NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];          NSString *currentVersion = [infoDic objectForKey:
Android检查更新
自定义dialog更新提示框,切记签名一样才可以覆盖安装
iOS 检查更新
1. 调 后台提供接口 获取最新版本号 2. 将当前版本号与 获取的最新版本号对比是否相同, 若是不同 3.弹出提示框 UIAlertView *update = [[UIAlertView alloc] initWithTitle:nil message:@"提示更新的内容" delegate:self cancelButtonTitle:@"取消" otherButton
检查更新代码
android开发代码检查更新功能示例 update
apache 下载apk出错
如果是apache服务器,需要修改apache的mime.types 找conf/mime.types文件添加如下两行 application/vnd.android.package-archive apk application/vnd.webos.ipk ipk 并且重启apache
bulid签名apk出错
Error:(2) Error: "app_name" is not translated in "ar" (Arabic), "cs" (Czech), "de" (German), "es" (Spanish), "fi" (Finnish), "fr" (French), "he" (Hebrew), "it" (Italian), "iw" (Hebrew), "ja" (Japanese
eclipse导出apk出错
报错信息如下: 解决办法: 项目上右键——Build Path——Configure Build Path 把Android Dependencies 给remove掉
Android兼容android7.0、及Android8.0以上apk安装权限问题(二)
最近在完善一个之前做的版本更新的功能 Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive"); ...
android7.0 照相和图片剪裁 以及 应用内部apk更新下载安装适配
一 核心思想:      由于android7.0对私有存储的限制,导致在获取资源的时候,不能通过Uri.fromFile(..)来获取uri了,但是在写入数据的时候是可以通过Uri.fromFile(..)来获取uri的     7.0其他适配和原理讲解,这位已经讲的很清楚了分享地址:http://www.devio.org/2016/09/28/Android7.0适配心得/ 二
Android7.0以上系统无法跳转到APK安装页
先表明原文地址,这几行代码都一样,随便找了一篇https://www.jianshu.com/p/9fdd84274954 但是!我的问题是按照上述文章处理后,不报FileUriExposedException了  ,但依然不跳转安装页面,也不报错,也不跳转,毫无头绪,很头疼,不知道问题在哪,所以这是最恶心的地方。 我是加上了一个安装权限就好了 <uses-permission an...
Android7.0系统使用Intent跳转到APK安装页
报错  android.os.FileUriExposedException:  原因 Android N对访问文件权限收回,按照Android N的要求,若要在应用间共享文件,您应发送一项 content://URI,并授予 URI 临时访问权限。  而进行此授权的最简单方式是使用 FileProvider类。 解决方法 1.在manifest中注册FileProvider <...
Android7.0系统安装APk,并且出现安装运行时报错的问题解决思路
Android 7.0系统安装APk详情,与遇到的问题记录
Android apk 下载更新在Android7.0后关于权限问题的解决
1.在工程的MainActivity.java中动态申请权限: //动态申请权限 //1.检测是否有读写的权限 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) { int permission = checkSelfPermission("android.permission.W...
ios-版本的检查更新.zip
xcode7.1及以上,模拟器9.1
Android应用程序实现检查更新功能
http://blog.csdn.net/xjanker2/article/details/6303937 http://jaymsimusic.iteye.com/blog/763540 http://www.iteye.com/topic/860420
Windows Update无法检查更新
【现象】Windows Update无法检查更新,报需要重新启动计算机。但是重启后仍旧无法检查更新。 【问题分析】 一、查看主机是windows7家庭版,很多功能都用不了,首先把windows7家庭版更新到windows7专业版。 1、右键计算机 --> 属性。  2、点击“获取新版本的windows 7的功能”,然后选择用密钥,输入密钥,等待完成即可。   当然这个密钥是收费的
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数