android - 多个版本的Android应用程序

标签 android eclipse ant preprocessor

鉴于没有预处理器指令(没有 jumping through some hurdles ),我想知道是否有一种可接受的方法来执行以下操作:

  1. 在常规的 Android 市场中有一个使用相机、麦克风等功能的 Android 应用。
  2. 根据某些构建参数有条件地“交换”某些功能。
  3. 生成两个 APK,每个商店一个

理想情况下,我希望将 ANT 体操保持在最低限度...并且理想情况下不必维护两组文件(即 google_activity_layout.xml 和 amazon_activity_layout.xml)。

编辑:这个答案看起来很有趣:https://stackoverflow.com/a/1813873/5416

最佳答案

我已经能够使用 XMLTask antlib 来修改 AndroidManifest.xml 作为 -pre-build Hook 的一部分。我没有使用您链接的机制,但我认为修改权限和使用链接机制的组合可以实现您的目标。由于权限是在运行时与编译时检查的。

您可以在这里找到该库:http://www.oopsconsultancy.com/software/xmltask/

有一点需要注意,这需要一些修改。由于 apk 的编译方式,我的“蚁猴生意”确实花了几个小时的时间进行修补。如果您愿意运行完整的构建几次,那么应该不会那么困难,并且可能只需将一个全新的任务添加到生成的 build.xml 的开头即可。如果您有任何疑问,请告诉我,因为我一直在修改这些东西。

关于android - 多个版本的Android应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9178491/

相关文章:

ruby-on-rails - Eclipse(Aptana插件)源代码行边框

java - 使用外部 JAR 构建 Eclipse 项目

android - Firebase 分析 : "select_content" events with "Content_type" value: (not set)

Eclipse 使用带有 execnet 的多个 Python 解释器

java - Eclipse 的 GWT 2.5 插件

java - 如何在连接速度低的两台计算机之间使用 Ant 复制文件?

java - Netbeans Ant 构建错误 'unsupported element customize'

android - 如何确定哪些 Android 设备可以使用计步器?

android - 如何删除 HTML5 Slider 视频 Controller

android - Android 应用程序中来自服务器的动态数据的本地化