2010-07-07 98 views

回答

9

我已經使用ICS啓動器完成了此操作。您還需要進行大量代碼更改才能將其作爲普通應用程序進行編譯,因爲它使用了大量私有內部API(儘管Google可能暗示了這一點)。您還需要更改軟件包名稱。我發現有兩個侷限性:

  1. 有一個名爲TableMaskFilter的過濾器,不能用於普通應用程序。我認爲這允許應用程序抽屜是半透明的,但我刪除了它的使用,它看起來很好,我認爲。

  2. 更關鍵的是,似乎沒有辦法複製窗口小部件添加體驗,因爲它需要只有系統應用才能擁有的權限。 See this question.

無論如何,我把我的源here。它編譯和工作在官方Galaxy S2 4.0.3上,但是如果你嘗試添加小部件,它會崩潰。

請注意,當您更改軟件包名稱時,會出現Eclipse重構未注意到的地方(例如XML佈局)。我建議你做一個全球性的文字搜索/替換。

+0

你是如何將啓動器編譯爲外部應用程序的? – arts777 2012-07-26 07:25:27

+0

更改了代碼。閱讀我的答案。 – Timmmm 2012-09-21 09:50:17

+1

@Timmmm很大的努力......感謝分享。 – 2012-10-17 02:36:29

7

標準Launcher是開源的,所以你絕對可以抓住它並按照你想要的方式修改它。爲了將您的應用程序用作主屏幕,您需要在AndroidManifest.xml文件中指定正確的Intent filter,用戶在按Home鍵時必須選擇您的應用程序。你爲什麼不抓住這些代碼,使用它,當你有更多的問題時想回來,更想知道你想要改變什麼。

+0

謝謝你,我已經抓住了發射源,如果我想改變機器人的主題,或其他人可以使用我的應用程序,在哪裏以及如何修改改主題啓動? – pengwang 2010-07-07 08:01:04

+0

默認情況下,標準啓動程序不會編譯爲SDK應用程序。你必須編輯代碼。對於啓動器來說,這實際上並不難......但是SMS和日曆應用程序讓我花了很多時間! – Timmmm 2012-09-21 09:51:30

+0

@Robby我添加了 過濾器在我的清單中的活動,但仍當我按下home鍵,它需要我回發射器,即使我已經設置我的應用程序爲默認啓動的主屏幕。 – 2013-08-23 07:16:11

4

在這裏,我找到了一個穩定版本的launcher2

我的共享設置GitHub庫。 HERE

WIKI這個項目:

這個項目包含了啓動應用程序附帶的Android果凍豆(API 16)的代碼。

一些細微的變化是從這個源代碼需要去除使用私有的API。這些變化都被打上了「// AOSP改變」

相關問題