相同的代码库、不同的 APK、不同的资源文件和不同的 Web 服务 URL
Same code base, different APKs, differents ressources files and different webservices urls
让我们想象一下以下情况:
我正在为汽车构建一个应用程序,比方说大众汽车。现在斯柯达(属于同一集团)想要完全相同的应用程序但具有不同的资源文件,并且需要对代码进行一些检查。如果是 VW,调用这个 webservice,如果是 Skoda,调用另一个。
我真的无法回答这个问题:"Is it the same application?"
从代码的角度来看是的,但从游戏商店的角度来看不是...
我怎样才能拥有相同的代码库但有两个不同的包名称?
我认为我正在阅读这篇文章 http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants 但如果您有任何技巧、建议或帮助分享,我将很高兴听到 :)
我知道有人问过这个问题,但我正在寻找 gradle & Android Studio 的解决方案。
发送
googles 的 play 商店使用的应用程序 ID 在 Build.gradle 文件中定义:
喜欢
productFlavors {
vw {
applicationId = "com.example.my.pkg.vw"
}
skoda {
applicationId = "com.example.my.pkg.skoda"
}
只需在新版本自动生成的文件夹下创建资源文件夹即可。有关详细信息,请参阅 http://www.vogella.com/tutorials/AndroidStudioTooling/article.html#androidstudio_creatingresourcefolder
您好,您可以使用产品风味来定义每个新应用程序的包名称,如@stoke 所说
productFlavors {
app1 {
applicationId "com.example.package.app1"
buildConfigField "String", "API_URL", "\"https://www.myapi.com/apiv1/\""
}
app2 {
applicationId "com.example.package.app2"
buildConfigField "String", "API_URL","\"https://www.myapi.com/apiv2/\""
}
}
要在构建中定义不同的端点或 url,您可以定义要在代码中使用的构建变量。
然后您可以在 java 代码中像 BuildConfig.API_URL 一样访问它们。
对于不同风格的不同资源,您需要定义 2 个与新风格名称相匹配的目录。
检查 this 文件结构和资源。
让我们想象一下以下情况: 我正在为汽车构建一个应用程序,比方说大众汽车。现在斯柯达(属于同一集团)想要完全相同的应用程序但具有不同的资源文件,并且需要对代码进行一些检查。如果是 VW,调用这个 webservice,如果是 Skoda,调用另一个。
我真的无法回答这个问题:"Is it the same application?" 从代码的角度来看是的,但从游戏商店的角度来看不是...
我怎样才能拥有相同的代码库但有两个不同的包名称?
我认为我正在阅读这篇文章 http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants 但如果您有任何技巧、建议或帮助分享,我将很高兴听到 :) 我知道有人问过这个问题,但我正在寻找 gradle & Android Studio 的解决方案。
发送
googles 的 play 商店使用的应用程序 ID 在 Build.gradle 文件中定义: 喜欢
productFlavors {
vw {
applicationId = "com.example.my.pkg.vw"
}
skoda {
applicationId = "com.example.my.pkg.skoda"
}
只需在新版本自动生成的文件夹下创建资源文件夹即可。有关详细信息,请参阅 http://www.vogella.com/tutorials/AndroidStudioTooling/article.html#androidstudio_creatingresourcefolder
您好,您可以使用产品风味来定义每个新应用程序的包名称,如@stoke 所说
productFlavors {
app1 {
applicationId "com.example.package.app1"
buildConfigField "String", "API_URL", "\"https://www.myapi.com/apiv1/\""
}
app2 {
applicationId "com.example.package.app2"
buildConfigField "String", "API_URL","\"https://www.myapi.com/apiv2/\""
}
}
要在构建中定义不同的端点或 url,您可以定义要在代码中使用的构建变量。
然后您可以在 java 代码中像 BuildConfig.API_URL 一样访问它们。
对于不同风格的不同资源,您需要定义 2 个与新风格名称相匹配的目录。
检查 this 文件结构和资源。