标签: android-install-apk

Silent install apk由system app(没有root)编程

我有android的系统级应用程序:sharedUserId ="android.uid.system"(UID:1000).

设备没有扎根!Manifest中包含INSTALL_PACKAGES权限.

我可以安静地安装下载的*.apk吗?

android android-install-apk

29
推荐指数
2
解决办法
4万
查看次数

在adb安装上INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES

同样的Android项目是在调试模式下构建的,有时使用Eclipse,有时使用ant(在构建机器上).

如果我首先安装ant build,然后尝试启动Eclipse调试,则会显示Eclipse控制台

[2012-03-20 13:32:26 - myproject]由于应用程序签名不同,重新安装失败.[2012-03-20 13:32:26 - myproject]您必须执行应用程序的完全卸载.警告:这将删除应用程序数据!
[2012-03-20 13:32:26 - myproject]请在shell中执行'adb uninstall com.myproject'.[2012-03-20 13:32:26 - myproject]发布取消!

如果我反过来这样做,即使用Eclipse调试(包括安装apk),然后尝试从命令行安装ant build,我得到:

失败[INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]

我的证书/签名有什么问题?

eclipse android signing apk android-install-apk

27
推荐指数
4
解决办法
4万
查看次数

26
推荐指数
4
解决办法
3万
查看次数

`export signed`和`unsigned` .apk文件有什么区别?

我正在使用这里的Android tools - Export...指导为我的Android应用程序构建.apk文件

我的问题是签名和未签名的.apk文件是什么?

我们怎样才能使用usnedined .apk文件?(我试图导出一个未签名的,但我无法为我的Galaxy Nexus安装它)

android android-install-apk eclipse-adt

24
推荐指数
2
解决办法
4万
查看次数

如何在同一台设备上安装Debug和Release apk?

在继续开发我的应用程序在真实手机上进行测试的同时,我需要在同一部手机上安装它的发布版本,以用于演示目的(由于没有日志,发布版本的响应速度更快).

问题是,在Android中的同一设备上共存两个应用程序的唯一方法是使用不同的包名.

但包名称需要重新分解和大量传播手动修复...更不用说这会混淆版本控制......

理想情况下,Eclipse + ADT将允许附加一个修饰符变量,该变量将自动为调试/发布生成不同的包名称并允许这种共存,但我找不到任何允许这样做的机制.

你知道如何解决这个问题吗?

欢迎创意解决方案和想法.

eclipse android adt apk android-install-apk

23
推荐指数
2
解决办法
4250
查看次数

尝试安装应用程序时INSTALL_FAILED_DEXOPT错误

我有一个类似的问题列出的那些在这里这里.

每次我尝试在我的Motorola Xoom上安装我的应用程序时,我收到一个INSTALL_FAILED_DEXOPT错误.

以下是来自控制台的错误消息:

[2011-08-02 09:34:43 - Blade] Installation error: INSTALL_FAILED_DEXOPT
[2011-08-02 09:34:43 - Blade] Please check logcat output for more details.
[2011-08-02 09:34:43 - Blade] Launch canceled!
Run Code Online (Sandbox Code Playgroud)

这里是相应的logcat:

08-02 09:47:48.910: ERROR/PackageManager(142): Package com.theisenp.blade has mismatched uid: 10023 on disk, 10073 in settings
08-02 09:47:48.910: INFO/PackageManager(142): Linking native library dir for /data/app/com.theisenp.blade-1.apk
08-02 09:47:49.110: ERROR/dalvikvm(2094): Duplicate interface: 'Lgnu/trove/TIntIntProcedure;'
08-02 09:47:49.110: ERROR/dalvikvm(2094): Trouble with item 1108 @ offset 0x5d49c
08-02 09:47:49.110: ERROR/dalvikvm(2094): Cross-item verify of section type …
Run Code Online (Sandbox Code Playgroud)

eclipse android android-install-apk android-logcat

17
推荐指数
2
解决办法
5万
查看次数

android以编程方式更新apk并查看安装结果

我正在为我的应用编写应用更新程序.确保我在设备上安装了apk后,这就是我在应用程序中执行的操作,我正在尝试更新:

Intent promptInstall = new Intent(Intent.ACTION_VIEW);
File f = new File(apkLocation);    
promptInstall.setDataAndType(Uri.fromFile(f), "application/vnd.android.package-archive");
_context.startActivity(promptInstall);
Run Code Online (Sandbox Code Playgroud)

这将启动我的安装程序,显示应用程序权限,然后我可以单击"安装".但是从这里应用程序只是关闭,我得不到任何消息(我会期望对话框告诉我安装成功,让我选择按"关闭"或"打开").它只是进入设备的主屏幕,恕不另行通知.

另外,当我手动打开它时,应用程序确实已更新.如何让安装程序按预期完成?是否有任何意图设定?

在写这篇文章的时候,我想知道这种情况发生的原因是当前应用程序只是在设备上被覆盖,从而关闭它并且程度上没有得到意图的结果,因为它的源被杀死了?

android android-intent apk android-install-apk

17
推荐指数
1
解决办法
2万
查看次数

确保从Play-Store安装Android应用程序

我最近发现了BlackMarket应用程序,这是一个谷歌Play-Store应用程序,这些人从Play-Store获取付费应用程序,让他们的用户下载并免费使用它.

作为一个计划为我的应用程序收取负担的开发人员,这让我感到烦恼,我想确保我的应用程序是通过Play-Store或我批准的任何商店安装的.

我想验证此类事情的唯一方法是通过广告系列跟踪,但自从Google分析v2以来,广告系列的跟踪工作是在Jar的接收器中完成的.

有没有其他方法来确定我的应用程序的安装来源?有没有办法拦截广告系列跟踪数据?

谢谢.

android google-analytics android-install-apk google-play campaign-monitor

13
推荐指数
1
解决办法
2716
查看次数

自我更新时崩溃APK(组件类不存在)

我正在研究一个系统应用程序,它通过下载apk并使用PackageManager的installPackage()方法安装它来更新它.

我收到以下异常:

Fatal Exception: java.lang.IllegalArgumentException: Component class com.myapp.package.receivers.SomeOldReceiver does not exist in com.myapp.package
           at android.os.Parcel.readException(Parcel.java:1544)
           at android.os.Parcel.readException(Parcel.java:1493)
           at android.content.pm.IPackageManager$Stub$Proxy.setComponentEnabledSetting(IPackageManager.java:3420)
           at android.app.ApplicationPackageManager.setComponentEnabledSetting(ApplicationPackageManager.java:1492)
           at com.myapp.package.utils.AndroidUtils.enableDisableComponent(SourceFile:113)
           at ...
Run Code Online (Sandbox Code Playgroud)

更新的apk中不存在"SomeOldReceiver"组件.

似乎现有APK的"旧"代码被执行(其应用程序的onCreate()被调用)试图访问更新的APK中存在的"新"清单,并且找不到"旧"接收器(这是甚至可能?).

我的应用程序还会收听PACAKGE_ADDED和PACKAGE_REMOVED意图.

此崩溃发生在相对较大比例的用户身上.

关于为什么会发生这种错误以及如何修复它的任何建议或线索将不胜感激.

android android-manifest android-install-apk android-broadcastreceiver

13
推荐指数
1
解决办法
763
查看次数

如何在Android Oreo中管理来自未知来源的安装?

在Android Oreo(8.0)中,对如何允许从未知来源(从用户的角度)安装应用程序以及获得安装权限的过程(从开发人员的角度)进行了一些更改.

由于我发现特别难以找到开发人员所需的所有步骤,我认为在这里请求解决方案并自己回答问题是有用的,因为我找到了答案,以便将来参考那些,面临同样的障碍.

答案将包括以下问题:

  1. 如何检查我是否可以请求安装包?
  2. 我必须要求什么准确的许可?
  3. 如何提示用户授予此权限?
  4. 如何提示用户安装指定的.apk?

(如果我在这里仍然遗漏任何内容,我会感激任何额外的答案或评论指出.)

security settings android android-install-apk android-8.0-oreo

13
推荐指数
2
解决办法
6771
查看次数