Android app安装第三方应用

在Android设备上安装第三方应用通常涉及一系列步骤,这些步骤可能会因Android版本的不同而有所差异。但大致流程可以归纳为以下几个关键步骤:

1、开启权限

      开启“允许安装未知来源应用”,可以去安全设置那里设置允许安装未知来源,也可以使用代码跳转

2、在AndroidManifest.xml添加了权限

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

3、判断是否有权限


    if(isUnknownSourcesEnabled){
        //权限没有打开则提示用户去手动打开
        openInstallPermission()
    }


    /**
     * 跳转到设置-允许安装未知来源-页面
     */
    private void openInstallPermission() {
          Intent intent = new Intent(Settings.ACTION_SECURITY_SETTINGS);
          startActivity(intent);

    }
    

   /**
     * 判断
     * 是否允许
     * 安装位置来源
     */
    public boolean isUnknownSourcesEnabled(Context context) {
        try {
            return Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS) == 1;
        } catch (Settings.SettingNotFoundException e) {
            return false;
        }
    }

4、执行安装 

filePath为绝对路径,例如demo.apk位于file/d/下,则filePath就为/file/d/demo.apk
   /**
     * 安装Apk
     */
    public void installApk(String filePath) {

        File apkFile = new File(filePath);
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

        if (apkFile.exists()) {
            Uri apkUri = FileProvider.getUriForFile(mContext(),  mContext().getPackageName() + ".fileprovider", apkFile);

            intent.setDataAndType(apkUri, "application/vnd.android.package-archive");
            intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

            try {
                startActivity(intent);
            } catch (android.content.ActivityNotFoundException ex) {
                // 安装器未找到,可能用户未启用安装未知来源
                Logger.d("===安装器未找到==" + ex.toString());
            }
        } else {
            Logger.d("===文件不存在===");
        }

    }

5、对了android7以上还需要配置FileProvider

    <!-- 读写sd卡文件处理 -->
        <provider
            android:name="androidx.core.content.FileProvider"
            android:authorities="csu.xiaoya.robotApp.fileprovider"
            android:exported="false"
            android:grantUriPermissions="true"
            tools:ignore="WrongManifestParent">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_paths" />
        </provider>

6、file_paths文件内容

<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <root-path name="root" path="."/>
    <files-path name="files" path="." />
    <cache-path name="cache" path="." />
    <external-path name="external" path="." />
    <external-files-path name="name" path="path" />
    <external-cache-path name="name" path="path" />
    <external-path name="external_files" path="."/>
</paths>

最后提示apk下载逻辑没有实现,需要资格去实现。

如何在Android系统手机上安装软件的三种方法 很多朋友初用安卓手机,可能都会比较陌生。下面就介绍一下如何在安卓系统上安装软件。在Android平台上安装文件的后缀名一般为“.apk”(如果你下载的软件是rar或者zip的话请解压之后再安装),和WM平台上的安装文件的后缀名“.exe”或者S60平台上的安装文件的后缀名“.sis或.sisx”相似。所以只要看到“.apk”结尾的文件就肯定是安装文件了。 在安装软件之前我们首先要对手机进行一系列的设置。在手机程序菜单中点“设置”进入,然后点击“应用程序”选项,在打开菜单中将“未知源”选项勾选中。然后进入“开发”子选项,勾选“USB 调试”选项。这样就完成了手机的设置。 完成如上准备工作后就可以进行软件的安装工作了。常用的安装方法一共有三种,下面我依次来为大家讲解。 方法一 使用Android系统的手机最简单的软件安装方法是进入件Market或者也叫电子市场(如果提示需要设置Gmail的话请参看链接)中下载安装。使用非常简单,只需用手指拖出程序菜单,点击Market(或者叫电子市场)图标进入该程序。 然后在搜索框(search)中填写你需要的软件名称搜索即可,或者在软件分类和推荐软件列表中找到你要安装的软件点击下载安装即可,如果是免费软件会显示为“Free”,如果是收费软件的话会提示软件的费用为“$xx”。 利用Market下载和安装都非常方便,但是此方法的缺点是非常浪费流量(就算软件是免费的,但是网络流量还是要收费的哦!),所以此法只推荐在连接Wifi(如果你Wifi不会设置的话,可以参看该链接)的情况下使用。另外如果你想安装收费软件,但是又不想花钱那么你可以按照下边的方法安装你在论坛或网站下载的以“.apk”为后缀名的破解版软件。 方法二 如果你的手机所刷的固件是安卓自制的固件话,那么你的的手机中可能已经集成了“APK安装器”,你只需要把要安装的文件用读卡器拷贝到内存卡中。然后在在手机程序菜单中点“设置”进入,然后点击“应用程序”选项,拖动菜单到下端可以看到“APK安装器”,点击进入。 安装器会自动搜索你内存卡中的安装程序,你只需选择要安装的程序名称点击安装即可。 如果你的手机使用的是原生的或者没有集成程序安装器的ROM那么你需要去Market中下载一款名为App Installer(其实就是软件安装器)的软件。在Market中下载安装完成后,在程序菜单中就可以找到刚安装App Installer了,使用方法同上。 方法三 直接使用电脑安装软件。使用“APK安装器”可以直接连接PC中将电脑中的软件安装到你的手机中。不过前提是必须先要安装Android手机的USB驱动,否则电脑无法识别所连接的手机,点击下载USB驱动程序,下载完成解压安装即可。 USB驱动安装完成后电脑就可以将你的手机自动识别为移动磁盘了。这是再点击下载“APK安装器”,下载安装完成后将该压缩包解压,然后点击运行该程序。该程序会自动关联电脑中的apk程序,安装软件时只需双击apk安装文件即可。该程序会帮助你自动将软件安装到你的手机里。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值