当前位置:首页 » 安卓系统 » android程序静默安装

android程序静默安装

发布时间: 2023-05-10 14:28:25

‘壹’ Android 静默安装和自启动(1、Root环境下)

各种以android硬件平台为基础的【公示屏】、【广告屏】等等,虽然很少有升级,但是不可避免的会遇到,而此类APP的使用场景,一般没人会去帮助你版本更新,点击安装,故而需要:静默安装。

1、确认安装包是否存在,并可读写
2、隐示启动:action和data的schema来控制弹出安装工具类APP,然后点击安装...
3、升级完:BootReceiver 监听到Intent.ACTION_PACKAGE_REPLACED,然后自启动

静默安装apk接口,无需开放root,也无需system权限。

‘贰’ android如何实现静默安装哦

原理

  • 静默安装、卸载的原理就是利用pm install命令来安装apk,pm uninstall 来卸载apk.

  • 智能安装是利用android系统提供的无障碍服务AccessibilityService,来模拟用户点击,从而自动安装.

java">//静默安装
privatevoidinstallSlient(){
Stringcmd="pminstall-r/mnt/sdcard/test.apk";
Processprocess=null;
DataOutputStreamos=null;
BufferedReadersuccessResult=null;
BufferedReadererrorResult=null;
StringBuildersuccessMsg=null;
StringBuildererrorMsg=null;
try{
//静默安装需要root权限
process=Runtime.getRuntime().exec("su");
os=newDataOutputStream(process.getOutputStream());
os.write(cmd.getBytes());
os.writeBytes(" ");
os.writeBytes("exit ");
os.flush();
//执行命令
process.waitFor();
//获取返回结果
successMsg=newStringBuilder();
errorMsg=newStringBuilder();
successResult=newBufferedReader(newInputStreamReader(process.getInputStream()));
errorResult=newBufferedReader(newInputStreamReader(process.getErrorStream()));
Strings;
while((s=successResult.readLine())!=null){
successMsg.append(s);
}
while((s=errorResult.readLine())!=null){
errorMsg.append(s);
}
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
if(os!=null){
os.close();
}
if(process!=null){
process.destroy();
}
if(successResult!=null){
successResult.close();
}
if(errorResult!=null){
errorResult.close();
}
}catch(Exceptione){
e.printStackTrace();
}
}
//显示结果
tvTest.setText("成功消息:"+successMsg.toString()+" "+"错误消息:"+errorMsg.toString());
}

‘叁’ 如何实现Android APP静默安装

8.1. 静默安装包(Silent Installation): 所谓静默安装包,有这么几个特点:安装过程没有界面;安装过程不需要用户进行任何输入;也不会在Taskbar中显示一个安装程序的Icon。 如何创建一个静默安装包: 1. 静默安装包的制作是在主程序完成后进行的,先录制静默脚本文件,通过在命令行运行安装包Setup.exe 给入参数/r,这时会启动的依然是有界面操作的安装,按照正常操作方式完成安装。 2. 完成上一步之后,会在系统的Windows或WINNT文件夹下产生一个Setup.iss文件(可以通过按照时间排序查找),将此文件复制到Setup.exe同一目录下,改名为Setup.iss.install(静默安装脚本)。 3. 继续在命令行执行Setup.exe /r,完成后将新生成的Setup.iss文件同样复制到Setup.exe目录下,改名为Setup.iss.uninstall(静默卸载脚本)。 运行静默安装包: 1. Setup.exe /s f1"Setup.iss.install的路径" f2“指定生成静默安装Log的路径” 如果不通过f2指定log路径,则会在setup.exe同路径下生成一个Setup.log的文件。 2. 静默卸载调用方法同1。 =====================================

‘肆’ android没有root的情况下怎么实现静默安装

手机ROOT方法:x0dx0a1、下载安装KingRoot 电脑版x0dx0a2、用USB数据线连接手机Root过程中,保持手机连接PCx0dx0a3、按提示开始Root操作整个过程需要5-10分钟x0dx0a4、Root成功!x0dx0ax0dx0a注:手机ROOT之后是不在保修条约里面的,需要解除ROOT权限即可。

‘伍’ android在root权限下实现apk的静默卸载,静默安装,重启

1.静默卸载实现:

/**

    * 静默卸载app

    *

    * @param context

    * @param packageName app的包名

    * @throws IOException

    * @throws InterruptedException

    */

    public static void uninstallApp(Context context, String packageName) throws IOException, InterruptedException {

        List<PackageInfo> packageInfos = context.getPackageManager().getInstalledPackages(PackageManager.GET_ACTIVITIES);

        for (PackageInfo packageInfo1 : packageInfos) {

            if (packageName.equals(packageInfo1.packageName)) {

                String suPath = "/system/xbin/su";

                File file = new File(suPath);

                if (!file.exists()) {

                    suPath = "/system/bin/su";

                }

                Process process = Runtime.getRuntime().exec(suPath);

                String cmd = "pm uninstall " + packageName + "\n" + "exit\n";

                process.getOutputStream().write(cmd.getBytes());

                process.waitFor();

                break;

            }

        }

    }

2.静默安装实现:

/**

    * 静默安装app

    *

    * @param filePath

    * @throws IOException

    * @throws InterruptedException

    */

    public static void installApp(String filePath) throws IOException, InterruptedException {

        String suPath = "/system/xbin/su";

        File file = new File(suPath);

        if (!file.exists()) {

            suPath = "/system/bin/su";

        }

        Process process = Runtime.getRuntime().exec(suPath);

        String cmd = "pm install -r " + filePath + "\n" + "exit\n";

        process.getOutputStream().write(cmd.getBytes());

        process.waitFor();

    }

最后加上重启命令:

/**

    * 重启系统

    *

    * @return

    */

    public static boolean reboot() {

        try {

            String suPath = "/system/xbin/su";

            File file = new File(suPath);

            if (!file.exists()) {

                suPath = "/system/bin/su";

            }

            Process process = Runtime.getRuntime().exec(suPath);

            String cmd = "reboot\nexit\n";

            process.getOutputStream().write(cmd.getBytes());

            return true;

        } catch (IOException error) {

            return false;

        }

    }

注意卸载和安装需要在子线程中执行;如果单纯关机则用“reboot -p”命令。

‘陆’ 安卓手机如何实现静默安装软件

实现是容易的,后果是严重的。
一旦开启静默安装模式,病毒和黑客程序基本上在你的手机上就可以长驱直入了。
不建议开。

给软件root权限就可以静默安装。比如安卓市场就可以。

热点内容
魅族存储盘 发布:2025-07-17 07:36:39 浏览:728
编译和运行java的命令 发布:2025-07-17 07:32:54 浏览:608
全军出击文件夹 发布:2025-07-17 07:28:33 浏览:553
安全解压缩 发布:2025-07-17 07:13:44 浏览:18
脚本格式器 发布:2025-07-17 07:13:43 浏览:925
用苹果机和安卓机哪个划算 发布:2025-07-17 07:02:22 浏览:877
访问公园 发布:2025-07-17 06:55:28 浏览:814
苹果怎么玩安卓王者 发布:2025-07-17 06:45:48 浏览:954
安卓机淘宝下载的东西在哪里 发布:2025-07-17 06:44:22 浏览:135
oracle生成sql语句 发布:2025-07-17 06:17:34 浏览:910