Android調用應用安裝界面方法

今天來教大傢android如何跳轉系統安裝界面

1.首先給AndroidManifest.xml(清單配置文件)添加權限

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

2.在res下創建一個xml包,用於後面給清單配置文件添加路徑

3.在xml包下創建一個xml文件

<paths>
    <external-files-path
        name="external_storage_root"
        path="."/>
</paths>

因為我這裡軟件安裝包的位置我用的是外部存儲(路徑/storage/emulated/0/Android/data/包名/files/名字)所以我選擇用external-files-path

其他存儲路徑的格式如下

(1)files-path:
對應物理路徑:getFilesDir(
對應具體路徑:/data/user/0/包名/files
(2)cache-path:
對應物理路徑:getCacheDir()
對應具體路徑:/data/user/0/包名/cache
(3)external-path:
對應物理路徑:Environment.getExternalStorageDirectory()
對應具體路徑:/storage/emulated/0
(4)external-files-path:
對應物理路徑:getExternalFilesDir("名字")
對應具體路徑:/storage/emulated/0/Android/data/包名/files/名字
(5)external-cache-path:
對應物理路徑:getExternalCacheDir()
對應具體路徑:/storage/emulated/0/Android/data/包名/cache

4.在AndroidManifest.xml(清單配置文件)添加配置

 <provider
            android:exported="false"
            android:grantUriPermissions="true"
            android:name="androidx.core.content.FileProvider"
            android:authorities="起一個獨特的名字.fileprovider">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/provider_paths"
                />
        </provider>

5.在java文件添加隱式意圖和權限代碼   

private void iniAPK() {
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { // 7.0+以上版本
            Uri apkUri = FileProvider.getUriForFile(this, "這是清單配置文件文件起的獨特的名字.fileprovider", file);  
            intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            intent.setDataAndType(apkUri, "application/vnd.android.package-archive");
        } else {
            intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
        }
       this.startActivity(intent);
 
 
    }

總結

到此這篇關於Android調用應用安裝界面方法的文章就介紹到這瞭,更多相關Android調用應用安裝內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: