如何重新构build默认的“启动器”应用程序?

我的目标是修改启动器应用程序,并dynamic修改和更改主题。

我在http://www.cyrket.com/p/android/com.stain46.taghome/上看到了几个“家”应用程序。 它看起来像他们采取了默认主页(启动),并修改它。 他们是怎么做到的? 我需要修改什么来达到同样的目的?

Solutions Collecting From Web of "如何重新构build默认的“启动器”应用程序?"

我用ICS发射器做了这个。 您还需要进行大量代码更改才能将其作为普通应用程序进行编译,因为它使用了许多私有的内部API(尽pipeGoogle可能暗示了这一点)。 您还需要更改软件包名称。 我发现有两个限制:

  1. 有一个名为TableMaskFilter的filter,不能用于普通应用程序。 我认为这允许应用程序抽屉是半透明的,但我删除了它的使用,它看起来不错,我认为。

  2. 更关键的是,似乎没有办法复制小部件添加体验,因为它需要一个只有系统应用才能拥有的权限。 看到这个问题。

无论如何,我把我的来源放在这里 。 它编译和工作在官方的Galaxy S2 4.0.3,但如果你尝试添加小部件,将崩溃。

请注意,当您更改包名称时,会出现Eclipse重构不会注意到的地方(例如XML布局)。 我build议你做一个全球性的文字search/replace。

标准的启动器是开源的,所以你一定可以抓住它并以你想要的方式修改它。 为了将您的应用程序用作主屏幕,您需要在AndroidManifest.xml中指定正确的Intentfilter ,用户在按Home键时必须select您的应用程序。 你为什么不抓住这些代码,玩它,当你有更多的问题时想回来,更想知道你想要改变什么。

在这里我find了一个稳定版本的Launcher2

我有分享GitHub回购。 这里

本项目的WIKI:

该项目包含Android Jelly Bean(API 16)附带的Launcher应用程序的代码。

这个源代码需要做一些小的改动来删除使用私有的API。 这些更改已被标记为“// AOSP更改”