是否可以动态标记应用程序

时间:2014-05-30 11:17:37

标签: ios branding

我有将连接到不同服务器的应用程序。每个服务器都像不同的客户端,我希望我的应用程序看起来不同(尽我所能),具体取决于它连接到哪个服务器。我以为我可以在目的地服务器上返回一个握手的ZIP,并使用它的详细信息,例如图像,设置等。

是否有可能,如果是这样的限制是什么?

修改 我正在考虑徽标等的图像和一些颜色列表,然后我可以使用回退到默认值。

4 个答案:

答案 0 :(得分:2)

除了以下几乎所有应用程序元素都可以使用

  1. 申请名称
  2. 应用程序图标
  3. 应用程序启动 屏
  4. 这3个项目捆绑在应用程序中,无法在运行时更改。 其余项目都有所谓的外观选择器,可用于实现动态品牌。

答案 1 :(得分:2)

您可以从客户端服务器下载所有资源(图像,字符串文件,NIB,故事板......)。

此外,还有一些项目是使用类似CSS的机制为动态设计开发的:

还有一些项目可以运行Javascript。这可能允许您自定义一些业务逻辑。

所以,是的。这是可能的,但你会发现一些限制,比如根视图控制器,应用代表等等。你必须要有创意。

我从未做过类似的事情,所以我可以提供更多帮助。

答案 2 :(得分:1)

这绝对是可能的,因为我自己也在使用这样的应用程序。我们基本上和你描述的方式一样。启动时,用户选择要连接的服务器,然后我们下载包含该客户端所有资产的zip文件。下载后,UI将加载自定义图像。您可以自定义系统允许的任何UI元素,这几乎是所有内容,除了系统StatusBar之类的小细节。您需要一些辅助课程,这些课程可以让您的生活更轻松,并支持方法,例如[UIButton themedButtonWithImage:]

答案 3 :(得分:0)

嗯,这是可能的 - 在一个极端,你可以拥有一个完全由UIWebView组成的应用程序(以及一些用于选择应用程序正在与之交谈的服务器的机制),它几乎可以获得所有内容来自服务器。

如果您这样做(互联网连接可靠性,成本和速度),可能会考虑性能因素,Apple可能会反对通过应用商店分发的任何应用上的某些事情,但假设您遵循其指南或在商店外分发,我所知道的唯一限制是应用程序图标,启动屏幕和应用程序标识符,它们必须包含在捆绑包中。