处理具有不同构建变体的 DropBox

问题描述

我在我的 2 个应用中遇到了 DropBox 问题。 事实上,我有 2 个构建变体,为了能够处理两个应用程序的不同秘密,我使用 gradle 将值注入清单,但对于 dropBox,我总是有这个错误

Installation did not succeed.
The application Could not be installed: INSTALL_Failed_CONFLICTING_PROVIDER

我所做的是在清单 dropBoxAppKey 的方案属性添加

        <activity
            android:name="com.dropBox.core.android.AuthActivity"
            android:configChanges="orientation|keyboard"
            android:launchMode="singleTask"
            >
        <intent-filter>
            <data android:scheme="db-${dropBoxAppKey}" />

            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.broWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

并在gradle中注入与每种口味相对应的appKey

 App1 {
          manifestPlaceholders = [dropBoxAppKey : "123456"]
       }
 App2 {
          manifestPlaceholders = [dropBoxAppKey : "654321"]
       }

但我总是遇到同样的错误 INSTALL_Failed_CONFLICTING_PROVIDER

解决方法

听起来您需要为每个变体设置一个不同的应用密钥(因此,在本例中总共有 4 个应用密钥;每个应用 2 个),以便消除每个应用变体的歧义。

从拥有应用的帐户打开 Dropbox API 票证,我们可以为您的每个应用添加一个额外的应用密钥/秘密:

https://www.dropbox.com/developers/contact

这样,您可以在每个变体中使用不同的键。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...