将服务部署到 Google Play

Deploy service to Google Play

我想创建一个在 Android 上运行并由第 3 方应用程序使用的服务(我们称之为 Service A)(我们称之为这些应用程序之一 Application B) .这样的解决方案类似于 Google Play Services for AR.

我正在尝试了解如何在商店中创建 Application BService A 之间的依赖关系,这样在安装 Application B 时,Service A 也是安装。

至 return 至 Google Play Services for AR 示例,作为第 3 方应用程序开发人员,我只需要指定对 ARCore 库的依赖项,当我将应用程序安装到一个设备,服务也安装了。

我想这样做的原因是能够独立于 Application B 更新 Service A,因为 Application B 的发布周期不受我控制。

为了 create the dependency between Application B, and Service A 你绝对可以利用 uses-library Manifest 标签来防止人们在你的自定义依赖项不在他们的设备上的情况下从商店下载它,但这只会阻止他们从商店获取;他们仍然可以通过无数其他方式下载它。

你最好的选择是让你的应用程序启动到特定的启动 activity 以检查他们的设备上是否存在软件包:

    public static boolean doesUseHaveMyDependency(Context context){
        try{
            context.getPackageManager().getApplicationInfo("com.yourlib.package", 0 );
            return true;
        } catch( PackageManager.NameNotFoundException e ){
            return false;
        }
    }

这样,您就可以确定您的自定义库是否已安装。如果没有,只需将他们重定向到下载 link 以获取它,然后当他们重新打开应用程序时,您会再次检查。一旦您确认他们拥有它,您就可以进入主应用程序。