【问题标题】:Android & iOS: Best way to create multiple similar appsAndroid 和 iOS:创建多个类似应用的最佳方式
【发布时间】:2013-05-17 17:19:07
【问题描述】:

我创建了一个应用程序,它从 JSON 文件中提取数据并显示它。 现在该应用程序特定于一个运动队。我想为其他 10 个团队创建相同的应用程序。 此外,该应用程序还会附带一个专业版。

我会为 iOS 版本做同样的事情。

应用程序之间的唯一区别是颜色、徽标和数据源的 url。

我想知道是否有更好的方法来创建应用程序。而不是单独创建 40 个不同的项目。

它将帮助我更新应用程序,而不是复制粘贴相同的代码 40X。 eclipse 和 xcode 中是否有任何特殊功能可以做到这一点?

谢谢

【问题讨论】:

  • 将您的核心逻辑放入一个库(如果需要,可以是一个 jar 文件或 android 库),然后从其他基本上只包含“皮肤”的应用程序中引用该库
  • HTML5 将为您节省多平台开发
  • @Mohamed_AbdAllah HTML5 不是开发应用程序的可行选择 - 这是一个可悲的事实。除了我的应用程序还做一些其他的事情,比如警报。我也喜欢原生应用程序开发。我是新手。
  • @FoamyGuy 是的,我知道这在 android 上是可能的。但它可以为 iOS 完成吗?有没有什么好的教程可以从你的代码中创建一个库?谢谢
  • 不知道 iOS 很抱歉。

标签: android iphone ios xcode eclipse


【解决方案1】:

我会简单地为每个团队交换资源并重新构建应用程序。

例如,对于 Android,为每个团队维护一个 AndroidManifest.xml 和一个 res/ 子目录树。当需要构建时,只需将资源复制到项目中,覆盖之前的团队。

但是,我不知道任何现有的工具可以自动执行此操作。

【讨论】:

  • 是的,如果只有 5 个应用程序,这将是正确的方法。但是每次构建新应用程序时,您还必须更改应用程序包名称,并且不可以这样做 40 次。一定有更好的办法。
  • 编写一个脚本来执行这些更改。手动操作会很乏味。
【解决方案2】:

您是否考虑过使用 PhoneGap 并创建一个“移动网站”来检测正在连接的应用并相应地调整数据/样式。

【讨论】:

  • HTML5 不是开发应用程序的可行选择 - 这是一个可悲的事实。除了我的应用程序还做一些其他的事情,比如警报。我也喜欢原生应用程序开发。我是新手。
【解决方案3】:

总是有可能创建一个应用程序,允许用户在首次加载时设置团队偏好,并以编程方式交换资源。

【讨论】:

  • 我喜欢你的想法。但是,出于品牌推广的目的,我认为拥有单独的应用程序会更合适。
【解决方案4】:

使用 Titanium Studio,您可以使用 Javascript 编写代码,并将您的代码转换为原生 Objective-C 代码、原生 android 代码、原生 html 5 代码,很快还会转换为 windows phone 代码。这是最好的免费跨平台IDE

【讨论】:

  • 这里的问题不在于在 2 个平台上本地创建应用程序。我已经在 iOS 和 android 上编写了应用程序。但是手动创建 40 个类似的版本是一件苦差事。我正在寻找自动化它。
【解决方案5】:

在查看您的回复后,您似乎需要一种策略来管理您的资源。由于不同的操作系统有不同的资源需求(例如屏幕尺寸,iOS 2x png)。最常见的策略是保留单独的资源结构并设置构建目标以在构建之前复制/xcopy 替换这些图像资源。源代码控制 + OSX 构建服务器将是最有益的。

【讨论】:

    【解决方案6】:

    创建这些应用后,我发现以下方法是创建类似应用的最简单方法。

    安卓: 1.从项目资源管理器侧边栏中选择项目复制它,然后粘贴它。给它一个新名字。

    1. 选择新项目,然后右键单击 > Android 工具 > 更改包名称。 给它一个新的包名。 Eclipse 会给你一个重构代码的选项,说是。

    2. 转到 res/values 并更改所有字符串。

    3. 更改图标和其他图像。

    4. 转到 src 单击包,然后重构它。给它一个新的包名。

    5. 转到清单文件并重命名任何可能仍然存在的旧名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-17
      • 1970-01-01
      • 2012-09-28
      • 2012-06-22
      • 2021-04-30
      • 1970-01-01
      • 2020-01-02
      • 1970-01-01
      相关资源
      最近更新 更多