首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何自动安装APK包

如何自动安装APK包
EN

Stack Overflow用户
提问于 2015-04-23 21:31:51
回答 5查看 1.9K关注 0票数 0

从下载管理器,我能够下载更新的APK。成功下载安装后,弹出窗口要求安装或取消。有没有办法安装APK而不要求安装。因为如果我点击弹出窗口的外侧,弹出窗口就会关闭。

代码语言:javascript
复制
 Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(Uri.fromFile(new File(path)),
                "application/vnd.android.package-archive");

        intent.setAction(Intent.ACTION_INSTALL_PACKAGE);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                | Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT); 
EN

回答 5

Stack Overflow用户

发布于 2015-04-23 21:56:25

在下面的方法中,在data/local上寻找一个预定义的标记,并尝试安装/system/preinstall目录中的apk文件(可以更改)。

在您的使用中删除apks_installed触摸。在下一次启动时,android将在preinstall目录中安装apks

添加在启动(init.d)脚本时运行的服务

代码语言:javascript
复制
service blabla /system/bin/blabla.sh
user root
group root
disabled
oneshot

编写blabla.sh文件并将其放入/system/bin/目录中

代码语言:javascript
复制
#!/system/bin/sh

MARK=/data/local/apks_installed
PKGS=/system/preinstall/

if [ ! -e $MARK ]; then

busybox find $PKGS -name "*\.apk" -exec sh /system/bin/pm install {} \;

touch $MARK
fi

注意:您可能意识到您还需要安装busybox

我可能犯了一些错误,但我想你明白我的意思。

票数 3
EN

Stack Overflow用户

发布于 2015-04-23 21:40:00

通常,您需要设备是根设备或具有系统固件签名。

您可以在您的应用程序中创建ApplicationManagerOnInstalledPackaged的副本。

使用它,您可以运行类似于以下代码的程序:

代码语言:javascript
复制
public static void installApp(Context context, File path, OnInstalledPackaged callback) {
    try {
        final ApplicationManager am = new ApplicationManager(context);
        if(callback != null) am.setOnInstalledPackaged(callback);
        am.installPackage(path);
    } catch (Exception e) {
        if(Utils.LOGGING) Utils.log("E::"+e.toString());
    }
}
票数 1
EN

Stack Overflow用户

发布于 2016-05-03 19:38:57

是的,您可以静默安装apk,方法是让您的应用程序系统应用程序,然后运行命令pm install,如下所示:

代码语言:javascript
复制
**private boolean installApk(String apkPath) 
{
  Command installEvent = new Command(getCommandList("pm install "
        + apkPath));
  return installEvent.executeCommandList();      
}**

这对我很管用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29825028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档