Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Android中维护pro和免费版本_Java_Android_Version Control - Fatal编程技术网

Java 在Android中维护pro和免费版本

Java 在Android中维护pro和免费版本,java,android,version-control,Java,Android,Version Control,我注意到市场上有很多应用程序有两个版本。一个是免费的,一个是付费的,带有扩展选项,通常是免费的 我正在考虑做一个类似的项目,但是,维护这两个版本的最佳技术是什么?我支持在eclipse中使用2个android项目并手动更改它们,这既昂贵又容易出错 提前感谢制作一个应用程序版本,并使用从捆绑资源文件中读取的属性来确定它是免费版本还是付费版本。例如,在构建付费版本时,您只需设置如下内容: com.myapp.version=paid com.myapp.version=free …对于免费应用程

我注意到市场上有很多应用程序有两个版本。一个是免费的,一个是付费的,带有扩展选项,通常是免费的

我正在考虑做一个类似的项目,但是,维护这两个版本的最佳技术是什么?我支持在eclipse中使用2个android项目并手动更改它们,这既昂贵又容易出错


提前感谢

制作一个应用程序版本,并使用从捆绑资源文件中读取的属性来确定它是免费版本还是付费版本。例如,在构建付费版本时,您只需设置如下内容:

com.myapp.version=paid
com.myapp.version=free
…对于免费应用程序,可能类似于:

com.myapp.version=paid
com.myapp.version=free
然后,作为初始化代码的一部分,您可以从文件/资源中获取此属性,并将其设置为系统属性。然后剩下的代码就可以执行以下操作:

if ("paid".equals(System.getProperty("com.myapp.version"))) {
    //allow access to paid functionality
}
else {
    //nag the user to get the paid version
}

因此,您没有两个单独的项目,而是有一个项目和一个代码库,用于构建两个不同的工件。

您可以在应用程序中硬编码一个常量值,例如
布尔isPro
<代码>如果(this.isPro),则可以允许其他功能或不显示添加。然后,当你准备将你的应用程序上传到android Market时,只需创建两个应用程序,一个是
isPro
分配给
false
,另一个是
true

这两个应用程序可能重复,如何解决android要求两个版本具有唯一软件包名称的问题?