1.ADB唤起
# 通过文件调起安装或者文件查看 (新手机只能调起系统安装)
adb shell am start -d file:///storage/emulated/0/GDTDOWNLOAD/apk/com.baidu.haokan.apk
2. 执行intent
Uri uri = Uri.parse("file:///storage/emulated/0/Download/browser/dangbeimarket415znds.apk");
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setPackage("com.android.packageinstaller"); //指定为系统安装器
intent.putExtra("android.intent.extra.RETURN_RESULT", true);
intent.setDataAndType(uri,"application/vnd.android.package-archive");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
3. 自身应用匹配安装scheme
<activity
android:name=".ui.OutInstallerActivity">
<intent-filter>
<action
android:name="android.intent.action.VIEW" />
<action
android:name="android.intent.action.INSTALL_PACKAGE" />
<category
android:name="android.intent.category.DEFAULT" />
<data
android:scheme="file" />
<data
android:mimeType="application/vnd.android.package-archive" />
</intent-filter>
<intent-filter>
<action
android:name="android.intent.action.INSTALL_PACKAGE" />
<category
android:name="android.intent.category.DEFAULT" />
<data
android:scheme="file" />
</intent-filter>
</activity>