9***@qq.com
9***@qq.com
  • 发布:2020-05-19 20:19
  • 更新:2020-06-23 16:31
  • 阅读:870

使用native调用原生方法安装APP报错

分类:Native.js
复制代码           var filePath = plus.io.convertLocalFileSystemURL("_doc/update/test.apk");  
        console.log(filePath)  

        var File = plus.android.importClass("java.io.File");  
        var apkFile = new File(filePath);  

        var Intent = plus.android.importClass("android.content.Intent");  
        var main = plus.android.runtimeMainActivity();  
        var Uri = plus.android.importClass("android.net.Uri");  
        var FileProvider = plus.android.importClass("android.support.v4.content.FileProvider");  

        var intent = new Intent(Intent.ACTION_VIEW);  
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  

        var Build = plus.android.importClass("android.os.Build");  

        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {  
            intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);  

            var contentUri = plus.android.invoke(FileProvider, "getUriForFile", main, "io.test.fileprovider", apkFile)  

            intent.setDataAndType(contentUri, "application/vnd.android.package-archive");  

        } else {  
            intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");  
        }  

        //卸载APP  
        //var packageURI = Uri.parse("package:io.test");  
        //var intent = new Intent(Intent.ACTION_DELETE, packageURI);  
        //main.startActivity(intent);  

        main.startActivity(intent);

上面这段代码在小米和华为EMUI10以下的手机执行是能够正确的安装apk文件的,但是放在EMUI10以上的手机执行的时候就会报错。

错误日志: Uncaught android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW typ=application/vnd.android.package-archive flg=0x1 };at io.dcloud.PandoraEntryActivity.startActivity

这样的错误该怎样解决呀

2020-05-19 20:19 负责人:无 分享
已邀请:
fjy1012

fjy1012

我的是下载文件后直接打开文件,手机会自动识别文件类型,是apk后缀的会跳转到安装界面,同一款app会覆盖原来版本

  • 9***@qq.com (作者)

    你是用hbuilderx打包的吧

    2020-07-28 14:16

  • fjy1012

    回复 9***@qq.com: 云打包的

    2020-07-29 09:01

  • 9***@qq.com (作者)

    回复 fjy1012: 用hbuilderx的云打包没有问题,使用hbuilder云打包就会有问题

    2020-07-29 10:02

  • fjy1012

    回复 9***@qq.com: 你这不搞笑吗,官方都说了应该用hbuilderX

    2020-07-30 13:42

  • fjy1012

    hbuilder是多少年前的东西?

    2020-07-30 13:43

该问题目前已经被锁定, 无法添加新回复

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容