我想構建一個與谷歌瀏覽器的android版本有相似之處的用戶界面。我該如何構建自己的Google chrome的Android版本?Google Chrome android應用程序的源代碼?
回答
我對潛水的建議是看看http://code.google.com/p/chromiumembedded/的來源。
這有點鉻的濃縮版,如果你看看文件它專門使用,無論是包含在它的源代碼樹的,或者其中包含從鉻回購文件在逃。 Chromium代碼庫是大量的東西,其中大部分實際上並不在瀏覽器中。有很多來自第三方回購的代碼,然後在構建過程中被淘汰,或者Chromium的實現位於樹的其他地方,還有很多副項目(雖然有趣並且是一個很棒的資源,東西)將阻止您實現特定的瀏覽器實現的目標,以及如何融合在一起。
CEF是偉大的,因爲你可以看到有人誰的已經做了拉動所有的東西,共同打造一個項目,在瀏覽器中查看,並沒有其他特別很作用域的過程。您可以很容易地看到哪些部分主要來源於webkit,您可以看到Google的實施中出現了哪些交叉點,並且您可以很輕鬆地看到V8如何進入混合。
我的確相對而言「很容易」,因爲我們仍然在談論大量的代碼。 CEF會讓你置身於需求的中心,但這些東西仍然從樹的其他部分吸收大量各種各樣的東西。編譯它需要花費大約一個小時的時間在一臺配備12個RAM和8個內核的非常棒的計算機上,生成的文件佔用6-10個小時。
最起碼,還有的不會是任何類型的快速跳轉到淺水區到這裏或那裏撿東西零碎。瀏覽器是必不可少的複雜工程,因爲它們必須包含如此大量的單個功能,然後將它們組合到共享的上下文中。你可能會發現你正在尋找的一件事,但是你會發現它是一個類庫的一部分,它可能由幾十或幾百個文件組成,而這些文件又依靠另外一百個這樣的庫來處理每個任務,所以要真正拿走一些東西,你必須花時間承擔超過任何給定的信息。
編輯:哦,也爲您的具體例子。
src的根http://src.chromium.org/viewvc/chrome/trunk/src
/鉻http://src.chromium.org/viewvc/chrome/trunk/src/chrome
的「Chrome」樹在很大程度上包含了直接實現(很多東西是不是在那裏,雖然,大部分甚至,但這是起點點)。這與ChromeOS的重疊(ChromeOS的是實物拍攝到了瘋狂的極端鉻瀏覽器)
/鉻/瀏覽器http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/
是讓你接近,你想要的。你開始看到你可以匹配到瀏覽器的特定參考,比如標籤和whatnot(忽略了實際瀏覽器實現本身的巨大象徵,它佔據了所有這些東西的大部分頭腦空間)
/chrome/browser/ui http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/
帶你到大多數UI代碼用於瀏覽器。當交叉或者東西遷移時,可能會引起混淆,比如在根src目錄中有一個「ui」,它有一些交叉。
最後http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/omnibox/
已在它的代碼,一個令人驚訝的少量。但這是你發現的很多。這裏的代碼是在別處構建的許多類的實現。對於非webview gui組件,您會發現它們大多指向根「ui」和本地小部件,這是實際事件處理代碼的大部分,如果我沒有記錯的話。
- 1. android spareparts應用程序源代碼
- 2. 推特Android應用程序 - 源代碼
- 3. Android Twitter應用程序源代碼
- 4. Android Google Navigations應用程序:我可以編輯源代碼嗎?
- 5. Google Chrome擴展程序的「編輯源代碼」按鈕
- 6. 如何使用開放源碼Android應用程序代碼
- 7. 如何保護Chrome打包應用程序的源代碼?
- 8. 編譯Android應用程序源代碼+代碼檢查
- 9. 如何運行我從Android源代碼獲取的應用程序源代碼?
- 10. 如何獲取Android的Google地圖應用程序的源代碼?
- 11. android應用的源代碼?
- 12. 恢復應用程序的源代碼
- 13. windows8中的應用程序源代碼
- 14. 實時應用程序的源代碼
- 15. Google Chrome源代碼重新加載
- 16. 如何從源代碼編譯google android gingerbread日曆應用程序?
- 17. 本地消息的Android應用程序的源代碼
- 18. Smali代碼vs Java源代碼當逆向工程Android應用程序
- 19. iPad應用程序源代碼
- 20. 更新:Soundboard應用程序源代碼
- 21. Material flutter應用程序源代碼
- 22. 鬧鐘應用程序源代碼
- 23. 更新mac應用程序源代碼
- 24. GPL和Web應用程序源代碼
- 25. 圖庫應用程序的源代碼Android
- 26. 如何在android中查看應用程序的源代碼
- 27. Android的電子郵件應用程序源代碼
- 28. 在Android上修改聯繫人應用程序的源代碼
- 29. Objective-C源代碼中的Gen Android應用程序
- 30. 電子商務與源代碼的Android應用程序模板