Android静默安装 并启动

Android静默安装 并启动

/**
	 * 静默安装 并启动
	 * @param tempPath  apk文件路径
	 * @return
	 */
	public static boolean slientInstall(String tempPath) {
		// 进行资源的转移 将assets下的文件转移到可读写文件目录下
//		createFile();

		File file = new File(tempPath);
		boolean result = false;
		Process process = null;
		OutputStream out = null;
		if (file.exists()) {
			System.out.println(file.getPath() + "==");
			try {
				process = Runtime.getRuntime().exec("su");
				out = process.getOutputStream();
				DataOutputStream dataOutputStream = new DataOutputStream(out);
				// 获取文件所有权限
				dataOutputStream.writeBytes("chmod 777 " + file.getPath()
						+ "\n");
				// 进行静默安装命令
				dataOutputStream
						.writeBytes("LD_LIBRARY_PATH=/vendor/lib:/system/lib pm install -r "
								+ file.getPath());
				dataOutputStream.flush();
				// 关闭流操作
				dataOutputStream.close();
				out.close();
				int value = process.waitFor();
				// 代表成功
				if (value == 0) {
					result = true;
					// 失败
				} else if (value == 1) {
					result = false;
					// 未知情况
				} else {
					result = false;
				}
			} catch (IOException e) {
				e.printStackTrace();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
			if (!result) {
				result = true;
			}
		}
		return result;
	}

你可能感兴趣的:(Android开发)