# SilentInstall **Repository Path**: hzmct/SilentInstall ## Basic Information - **Project Name**: SilentInstall - **Description**: 杭州迈冲科技静默安装实例 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 4 - **Created**: 2021-04-08 - **Last Updated**: 2025-09-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SilentInstall 杭州迈冲科技静默安装实例 ## 一、使用说明 静默安装实例使用 ``` pm install -r xxx ``` 命令实现。 该命令需要开发板具备 root 权限。 ### 申请读写权限 ```java ``` ### 替换安装 ```java Executors.newCachedThreadPool().execute(new Runnable() { @Override public void run() { ResourceUtils.copyFileFromAssets("SilentInstall-1.1.0-10.apk", "/sdcard/SilentInstall.apk"); SystemClock.sleep(2000); ShellUtils.execCmd("pm install -r /sdcard/SilentInstall.apk", true); SystemClock.sleep(1000); } }); ``` ### 注册应用升级广播 ```java public class PackageReplacedBroadcastReceiver extends BroadcastReceiver { private static final String PACKAGE_REPLACED = "android.intent.action.PACKAGE_REPLACED"; @Override public void onReceive(Context context, Intent intent) { String packageName = intent.getData().getSchemeSpecificPart(); Log.w("replacePackage", packageName + ">-<" + context.getPackageName()); if(intent.getAction().equals(PACKAGE_REPLACED) && packageName.equals(context.getPackageName())) { //广播和包名确认 Intent activity = new Intent(context, MainActivity.class); activity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(activity); } } } ``` ## 二、下载体验 [静默安装 apk 下载](https://github.com/Hangzhou-Maichong-Technology/SilentInstall/raw/master/apk/SilentInstall.apk)