Подтвердить что ты не робот

Исходный код приложения Google Chrome для Android?

Я хотел создать пользовательский интерфейс, который имеет сходство с версией Chrome Chrome от Chrome. Как я могу самостоятельно построить версию Google Chrome?

4b9b3361

Ответ 1

Моя рекомендация по поводу такого погружения - это посмотреть на источник http://code.google.com/p/chromiumembedded/.

Это своего рода сжатая версия Chrome, и если вы посмотрите на файлы, которые она специально использует, либо те, которые включены в ее исходное дерево, либо файлы, включенные в нее из Chromium repo в целом. База кода Chromium - это огромное количество материалов, большинство из которых на самом деле не находится в браузере. Там тонна втянутого кода из сторонних репозиториев, которые затем закручиваются в процессе сборки или реализации Chromium, находится где-то еще в дереве, есть много побочных проектов, которые (в то время как интересный и удивительный ресурс для широкой ) не позволит вам достичь своей цели специально оттачивать ее в реализации браузера и как это сочетается.

CEF замечателен, потому что вы можете видеть, кто уже выполнил процесс потянув все это вместе, чтобы создать проект, который очень определенно просматривается в браузере и больше ничего. Вы можете видеть, какие части в основном производятся из webkit, вы можете увидеть, где кроссовер приходит с реализациями Google, и вы можете довольно легко увидеть, как V8 попадает в микс.

Я говорю "легко" в относительных терминах, потому что мы все еще говорим о огромном количестве кода в целом. CEF поместит вас в центр требований, но этот материал по-прежнему тянет огромное количество различных вещей от остальной части дерева. Компиляция занимает около часа на действительно хорошем компьютере с 12 гигабайтами RAM и 8 ядер, а сгенерированные файлы занимают соответственно 6-10 концертов.

По крайней мере, не будет никакого быстрого прыжка в мелкий конец, чтобы выбрать что-то здесь или там по частям. Браузеры - это невероятно сложные части техники, потому что они должны включать такое огромное количество отдельных функциональных возможностей, а затем объединить их в общий контекст. Вы можете найти одно, что ищете, но вы обнаружите, что это часть библиотеки классов, которая, вероятно, состоит из десятков или сотен файлов, которая, в свою очередь, опирается на еще сто библиотек для обработки каждой задачи, поэтому, чтобы действительно занять что-то, вам придется посвятить время тому, чтобы взять гораздо больше, чем любая информация.

Изменить: oh также как ваш конкретный пример.

src является root http://src.chromium.org/viewvc/chrome/trunk/src

/chrome http://src.chromium.org/viewvc/chrome/trunk/src/chrome

Дерево "хром" в основном содержит прямую реализацию (много чего не существует, хотя большая часть из них даже, но эта исходная точка). Это совпадение с хромосом (хромосы - это вид браузера хрома, сделанного до безумного экстрима)

/chrome/browser http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/

Позволяет вам приблизиться к тому, где вы хотите быть. Вы начинаете видеть конкретные ссылки на вещи, которые вы можете сопоставить с браузером, такие как вкладки и многое другое (игнорируя гигантский слон самой реализации самого браузера, который является тем, что занимает большую часть пространства сознания во всем этом)

/chrome/browser/ui http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/

Приводит вас к тому, где большая часть кода ui для браузера. Это может сбивать с толку, когда кроссовер или когда материал мигрирует, например "ui" в корневой директории src, которая имеет некоторый кроссовер.

И наконец http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/omnibox/

Что в нем удивительно малое количество кода. Но это то, что вы найдете много. Код здесь представляет собой реализацию ряда классов, которые создаются в другом месте. Для компонента, не относящегося к веб-интерфейсу gui, вы обнаружите, что они в основном указывают на корневой "ui" и там, где есть собственные виджеты, где основная часть фактического кода обработки событий, если я правильно помню.

Ответ 2

Прочитайте хром FAQ.

Является ли Chrome для Android открытым исходным кодом?

Chrome для Android происходит от Chromium. С момента запуска первой версии мы постоянно открываем все критические компоненты. Вы можете создавать различные компоненты Chromium для Android, используемые в Chrome для Android, используя инструкции здесь.