我在Git中有一个用Eclipse开发的项目,我需要创建一个Production ready .apk和一个Dev .apk,安装在相同的设备上。
两者之间的变化是次要的属性设置,例如XML feed等。
使用或不使用Eclipse,创建要在同一设备上安装Producion和Deve .apk文件的最佳做法是什么?
答案 0 :(得分:13)
我发现这样做的唯一方法是更改包名称。从技术上讲,这只需要在清单文件中完成,但这可能会导致一些构建错误,因此您可能也必须重命名该包。因此,如果您有com.company.app,则可以将其更改为com.company.app.dev和com.company.app.prod。 只要您没有使用任何反射,Eclipse就应该为您重命名所有代码。
答案 1 :(得分:2)
我正在通过以下方式解决这类问题:
我有3种不同的活动:基本,生产和开发,如:
public class BasicActivity extends Activity {} //actually conntains all code
public class ProductionActivity extends BasicActivity {} //empty one
public class DevelopmentActivity extends BasicActivity {} //empty one
然后有2个不同
表明,说:生产(点
至ProductionActivity
可发射并且有所不同
包)和发展(指向
DevelopmentActivity
可启动)
当我需要启动Production one时 - 我曾经将生产清单(使用ant任务)复制为实际生成清单,反之亦然,将其复制为开发生成清单。
由于R.class
必须与清单中声明的包在同一个包中,因此资源编译的复杂性很小。但是,再次通过一些“手工制作”的蚂蚁,我也想要解决这个问题。