是否有关于如何开发具有“附加组件”的应用程序的大纲或入门知识?
,例如,如何开发某种框架来为应用添加“主题”?
有2个主题的基本应用程序。用户应该能够为特定主题下载另一个应用程序。
原始应用和新下载的应用如何协商?
您如何开发原始应用以从第二个主题应用获取主题信息和图形资源?
我的理解是应用程序是完全独立的,所以这就是为什么我不清楚如何实现这一目标。
答案 0 :(得分:6)
原始应用和新下载的应用如何协商?
对于一个主题,谁说他们必须一起聊天?
如何开发原始应用以从第二主题应用获取主题信息和图形资源?
步骤1:为您的包选择一个命名约定。例如,如果您的基本应用为com.abc.app
,则您的主题可能为com.abc.app.theme.*
。
步骤2:当用户选择主题时,请使用PackageManager
和getInstalledApplications()
通过检查其主题名称来查找主题。
步骤3:当需要使用主题时,请在getResourcesForApplication()
上致电PackageManager
以获取主题应用Resources
,这样您就可以获得所需内容。
我确信有策略(例如,主题主要是传送带,将其内容部署在外部存储器的目录中,主应用程序从中读取信息),但这是我开始使用的那个,因为它应该需要最少的用户干预。
答案 1 :(得分:0)
我相信在这种情况下最干净的设计是在Market中拥有一个应用程序,并在您自己的服务器上提供主题。然后,用户可以从Market下载应用程序一次,然后应用服务器上可用的主题。
但是,如果您希望将它们作为单独的市场条目,您可以在清单上设置android:sharedUserId标志,使其全部在相同的用户ID下运行,这将允许您共享文件(位图等) ) 它们之间。请记住,他们都必须使用相同的证书签名。
可能让用户感到困惑的是,他们可以在下载主应用程序之前下载附加组件...在这种情况下,您必须显示一条错误消息,要求他们下载主要内容应用