2012-12-14 20 views
2

這只是我的信息的一般問題。我知道如何創建標準的Android應用程序,但我想知道:怎麼可能/人們如何增強Android核心功能並深入挖掘系統?一般:如何更改Android核心API類?

例如: 假設我想調整DownloadManager類,許多應用程序都使用這個類。因此,例如,可以調整該類,以便在下載進度下顯示在通知欄中的下載文本以某種方式更改。

請問以下愚蠢的問題,但我沒有這些先進理念的主題,這就是爲什麼我問這裏;-)

  • 有可能發生變化(例如)的下載管理器類,所以它具有擴展的功能,然後將被第三方應用程序使用,對嗎?
  • 修補後的類可以放在Play Store中供其他人下載/擴展其DownloadManager功能嗎?
  • 人們需要Root才能安裝這樣的改變嗎?
  • 最重要的是:某人如何更改Android API類?我真的很喜歡這裏:我不知道從哪裏獲得源代碼,如何用增強類替換標準,需要什麼等。是否有關於這樣的高級主題的教程?

請賜教一點點:-)

回答

2

可能改變(例如)的下載管理器類,使 它的擴展功能,這將然後通過第三方應用程序 使用。

是的,當然,Android源代碼是在Apache許可證下打開的,您可以修改此源代碼,並公開進入這個世界。有關DownloadManager類和許多其他類的一些細節,在Android OS結構中,這些類在上層進行編程,通常使用Java進行編程。

然後可以將修補後的類放入Play Store中以供其他人 下載/擴展其DownloadManager功能?

我不明白你的問題。在Play商店(和另一個Android應用商店),人們上傳他們的應用程序(在有趣的句子中,上傳的源代碼已編譯),那麼如何上傳用戶擴展其應用程序的源代碼?

你可以公開你的源代碼,github上,或者程序員常常見面,這樣他們就可以查看您的源代碼,並經常給你寶貴的想法和意見:)

人們會需要root到另一個地方能夠安裝這樣的改變?

如果是高級用戶,他們可以爲他們的設備安裝新的Android操作系統。但我認爲,這個答案比你真正需要的還要多。

從哪裏獲得的,如何更換與 增強類標準的源代碼,什麼需要爲該等是否有甚至高級的主題這樣的教程 ?

在Android SDK文件夾中有一個名爲「Source」的文件夾,你可以去那裏看到很多Android源代碼。你可以採取,閱讀和修改你想要的。 Android的某些部分不在這裏,你應該谷歌爲這,它很容易在互聯網上找到。

但是你應該記住,當你修改這個類或那個類時,它不再屬於Android OS,你必須將這個類文件作爲普通類導入到你的項目中。所以,如果你想修改基本的Android API:那些API通常都是用Java寫的,你可以仔細閱讀並理解,如果你願意的話可以修改一些部分,然後將這個類導入到你的項目中。

最後一句話,爲什麼你應該這樣做:)因爲你可以延伸你想要的類,併爲這個類增加了一些額外的功能。它更容易,更好。

希望得到這個幫助:)

+0

嗨!感謝您的回答,我會再次嘗試再次解釋我的意思: –

+0

'因此,如果您想修改基本Android API ...將此類導入到您的項目中。「
嗯,我沒有項目。我想改變它在我的Android中,我的設備上,每個調用它的應用程序的工作方式。愚蠢的例子:我想我所有的下載管理器下載有一個紅色的進度條。我假設,我在我的系統中深度編輯了DownloadManager類,然後每當第三個應用程序使用管理器時,進度將爲紅色。
要麼我以非常錯誤的方式思考,要麼我不善於表達自己的想法;-) –

+0

是的。如果第三方想要使用你的類,他們必須再次導入你的類並重新編譯整個項目。此外,你不能改變系統類:) – hqt