【问题标题】:How do we know about APK install source我们如何知道 APK 安装源
【发布时间】:2023-03-25 15:46:01
【问题描述】:

我才知道,Android Play Store不仅是我们可以部署APK文件的地方,还有很多few

现在我计划在以下位置部署我的 APK:

  1) Amazon AppStore
  2) Opera Mobile Store
  3) Samsung Apps Store
  4) NokiaX.
  5) Android Play Store (Already deployed, also tracking)

现在的问题是如何知道我的应用的安装来源?

我想看看,如果应用程序是从Android Play StoreAmazon AppstoreOpera Mobile StoreSamsung Apps store 等安装的......

以下链接可能有助于安装亚马逊应用:

Android install source

感谢任何帮助。

【问题讨论】:

    标签: samsung-mobile google-play amazon-appstore opera-mobile nokiax


    【解决方案1】:

    没有用于此的 API。您无法知道 apk 是侧载的还是从商店安装的。不能 100% 确定某些商店是否有某种客户端数据库,但并非所有商店都有。

    【讨论】:

    • 对于android,我们必须在Manifest文件中添加receiver。对于亚马逊,我想,它与上面指定的链接相同。我还需要了解其他商店。无论如何感谢您的意见。
    【解决方案2】:

    假设您使用 Gradle,您可以为每个商店使用不同的产品风味。您可以为每种风味创建一个资源文件,然后在运行时读取该资源的值以了解您正在运行的风味。每种风格只需要一个额外的资源 XML 文件,并在 build.gradle 中定义这些风格。在这些修改之后构建您的应用程序将导致每个商店有 1 个 APK,除了那个资源值之外,这些 APK 是相同的。

    http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Product-flavors

    类似这样...将这些添加到您的 build.gradle:

       android {
           productFlavors {
            amazon {}
            opera {}
            samsung {}
            nokiax {}
            google {}
           }
       }
    

    然后您为每个风味 app/src/FLAVOR/res/values/store.xml 添加一个资源文件(例如 app/src/nokiax/res/values/store.xml)

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="store_identifier">nokiax</string>
    </resources>
    

    现在,当您读取资源“store_identifier”的值时,您可以检测到您正在运行哪种风味,从而推断出它是从哪个商店安装的。不过,您可能希望使用整数资源而不是字符串。

    通过这些修改构建应用程序将生成 5 个 APK 文件(例如 app_nokiax_release.apk、app_google_release.apk ...),您可以将每个文件部署到各自的商店

    【讨论】:

    • 哇!这是一个很好的选择。非常感谢。有了这个,我可以在Google Analytics 上跟踪口味。我会试一试的。
    【解决方案3】:

    您可以使用InstallSourceInfo检查 API 级别 30 及以上的安装源

        val sourceInfo = applicationContext.packageManager.getInstallSourceInfo(applicationContext.packageName)
        val installSourcePackageName = sourceInfo.initiatingPackageName
    

    【讨论】:

      猜你喜欢
      • 2019-12-09
      • 2022-01-25
      • 1970-01-01
      • 2012-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多