Ave*_*rus 7 java android gradle android-contentprovider android-productflavors
我有app应该有两种口味:免费和付费.两个版本分别完美运行.但是当我想立刻安装其中的两个时,我收到错误:[INSTALL_FAILED_CONFLICTING_PROVIDER].我试图改变android:authorities和buildConfigField值完全不同但它不会改变任何东西 - 应用程序将无法安装.我还删除了主Android Manifest中的提供者声明 - 没有.请帮我.
我的文件夹结构:
src
|- free
| |- AndroidManifest.xml
|- main
| |- all files and res catalogues (java, res, values etc.)
| |- AndroidManifest.xml
|- premium
|- AndroidManifest.cml
Run Code Online (Sandbox Code Playgroud)
我的gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion '20.0.0'
final PROVIDER_FREE = "com.example.free.contentprovider"
final PROVIDER_PRO = "com.example.pro.contentprovider"
defaultConfig {
minSdkVersion 14
targetSdkVersion 20
}
buildTypes {
release {
minifyEnabled false // new version
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
free {
applicationId "com.example.free"
versionCode 141201004
versionName "1.004"
buildConfigField "String", "PROVIDER_AUTHORITY", "\"" + PROVIDER_FREE + "\""
}
premium {
applicationId "com.example.pro"
versionCode 141210001
versionName "0.001 Pro"
buildConfigField "String", "PROVIDER_AUTHORITY", "\"" + PROVIDER_PRO + "\""
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的内容提供商:
public class DatabaseContentProvider extends ContentProvider {
public static final String AUTHORITY = BuildConfig.PROVIDER_AUTHORITY;
...
}
Run Code Online (Sandbox Code Playgroud)
我的免费Android清单:
<provider
android:name="com.example.tools.DatabaseContentProvider"
android:authorities="com.example.free.contentprovider"
android:exported="false"
android:grantUriPermissions="true">
<grant-uri-permission android:pathPattern=".*" />
</provider>
Run Code Online (Sandbox Code Playgroud)
我的高级Android Manifest:
<provider
android:name="com.example.tools.DatabaseContentProvider"
android:authorities="com.example.pro.contentprovider"
android:exported="false"
android:grantUriPermissions="true">
<grant-uri-permission android:pathPattern=".*" />
</provider>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1341 次 |
| 最近记录: |