我在这里发布了一个 Android 开源应用程序https://github.com/evilsocket/dsploit ...正如您在下载部分看到的,我为我的用户分发预编译的 apk 包。
该应用程序实现了一个非常简单的自动更新引擎:
- 在启动时,它会检查 github 存储库中的文件 VERSION,其中包含可用的最新版本的字符串,并将其与正在运行的版本名称进行比较。
- 如果远程版本 > 本地版本,则应用程序会从 repo 下载新的 apk。
问题是当安装过程开始时:
Intent intent = new Intent( Intent.ACTION_VIEW );
intent.setDataAndType( Uri.fromFile( file ), "application/vnd.android.package-archive" );
intent.setFlags( Intent.FLAG_ACTIVITY_NEW_TASK );
mContext.startActivity(intent);
用户收到错误消息:
An existing package by the same name with a conflicting signature is already installed.
要在 Eclipse 中创建 apk,我导出一个签名的 apk 并为每个版本创建一个新的密钥库……我是否必须始终使用相同的密钥库?
谢谢