gpt4 book ai didi

android - 如何在不打开 Play 商店的情况下以编程方式安装应用程序(就像 Google Drive 一样)

转载 作者:IT王子 更新时间:2023-10-28 23:40:33 26 4
gpt4 key购买 nike

今天 Google 云端硬盘应用询问我是否要安装新应用表格和文档。

我已接受,希望它会打开 Google Play 商店,以便我可以按安装。

没有。它只是向我显示了带有每个应用程序权限的弹出窗口以确认安装,当您在 Play 商店中的任何应用程序上按“安装”时出现的相同。

我不知道可以这样做。

我们如何在应用程序中重现这种行为:有一个不需要打开 Google Play 商店的“安装应用程序 XPTO”按钮?只是显示权限对话框并继续通过 Play 商店安装它?


更新:

对于那些因为认为这与其他问题相同而投反对票的人...不是!

在这种情况下,APK 不会被 Google Drive 应用程序下载然后安装。 Google 云端硬盘“告诉”Play Store 下载和安装。

这就是我感兴趣的 API。

为了支持我的情况:在按下 INSIDE Google Drive 安装应用程序而不打开 Play 商店后,下载开始。在下载过程中,我打开了 Play 商店进行检查:

enter image description here

截图证明不是Google Drive下载APK并安装它。这是 Play 商店。

最佳答案

Google Drive 的日志显示负责“告诉”Google Play 商店安装应用程序的 Activity 是

com.google.android.apps.docs/com.google.android.apps.docs.app.PhoneskyApplicationInstallerActivity

这显然是“告诉”

com.android.vending/com.google.android.finsky.billing.lightpurchase.LightPurchaseFlowActivity

安装所需的软件包。

因此,理论上,人们可以创建一个 Intent

Intent intent = new Intent("com.android.vending.billing.PURCHASE");
intent.setClassName("com.android.vending",
"com.google.android.finsky.billing.lightpurchase.LightPurchaseFlowActivity");
intent.putExtra(EXTRA_NAME, EXTRA_VALUE);
startActivityForResult(intent, 0);

带有正确的额外值,瞧!

但是,从非 Google 签名的应用调用 LightPurchaseFlowActivity 失败,因为它们显然(根据日志)再次检查调用包的签名:

W/Finsky(13209): [1] LightPurchaseFlowActivity.setupFromExternalPurchaseIntent: Called from untrusted package.

所以,目前还不能实现。

关于android - 如何在不打开 Play 商店的情况下以编程方式安装应用程序(就像 Google Drive 一样),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23695170/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com