Tag: apk

如何以编程方式检查是否安装了应用程序?

我们已经编程安装了应用程序。 如果应用程序已经安装在设备中,则应用程序将自动打开。 否则安装特定的应用程序。 引导我。 我不知道。 谢谢。

Android应用程序库效率

Android是否做任何事情来跨应用程序共享重复的库? 看来,操作系统可以检测到重复的哈希值,并避免为每个应用程序分开的副本。 如果用户安装了50个应用程序,并且其中许多应用程序具有Android支持,Kotlin和Guava库的版本,那么这将是一个很好的机会来节省磁盘空间。

以编程方式安装/卸载APK(PackageManager vs Intents)

我的应用程序安装了其他应用程序,并且需要跟踪它安装的应用程序。 当然,这可以通过简单地保存已安装应用程序的列表来实现。 但是这不应该是必要的! PackageManager负责维护installedBy(a,b)关系。 实际上,根据API,它是: public abstract String getInstallerPackageName (String packageName) – 检索安装包的应用程序的包名称。 这标识了包装来自哪个市场。 目前的做法 使用意图安装APK Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); startActivity(intent); 使用Intent卸载APK: Intent intent = new Intent(Intent.ACTION_DELETE, Uri.fromParts("package", getPackageManager().getPackageArchiveInfo(apkUri.getPath(), 0).packageName,null)); startActivity(intent); 这显然不是Android Market安装/卸载软件包的方式。 他们使用更丰富的PackageManager版本。 这可以通过从Android Git存储库下载Android源代码来看到。 以下是对应于Intent方法的两个隐藏方法。 不幸的是,它们不适用于外部开发者。 但也许他们会在未来? 更好的方法 使用PackageManager安装APK /** * @hide * * Install a package. Since this may […]

为什么Android Studio 3测试版有Build APK(s)选项而不是Build APK?

我一直在使用Android Studio开发Android应用程序。 我已经安装了Android Studio version 2.33版本,我还有Android Studio 3 beta作为早期的测试人员在官方发布之前进行预览。 我看到了Android Studio 3的改进,如Instant Apps Support , Analysing Apk , Kotlin Language Support 等等,正如这里所解释的 。 在选项卡版本中,导航视图发生了一些变化,在Android Studio 2.33中选择了一个名为Build APK的选项,现在在Android Studio 3测试版中称为Build APK(s) ,作为复数或添加了多个APKs这些可以在下面的图像中看到 这是Android Studio 2.33 这是Android Studio 3测试版 。 我想要获取app-debug.apk时,经常使用此功能。 我已经打开了我的项目在Android Studio 3测试版,并使用相同的功能没有差异的结果,它只是创建我的app-debug.apk像往常一样在文件夹C:\Users\MY_COMPUTER_NAME\AndroidStudioProjects\APP_NAME\app\build\outputs\apk\debug\app-debug.apk作为Android Studio 2.33所做的。 但是我相信这个改变一定是有原因的! 为什么像许多APK一样的复数形式? 我在这里错过了一个很好的功能吗? Android Studio 3测试版可以生成多个APK's ,我不知道该功能,还是只有即时应用的额外APKs ?