私はこの前の質問に触発されましたが、全体像を把握することはできませんでした。私は、商用チップセットプラットフォームに基づく新しいデバイス用のカーネルとAndroidシステムを開発しています。
チップセットベンダーは、「zip形式の固定カーネルコード」、「Android独自のソース」、「モデムソース」を提供してくれます。これらのパーツはすべてペアになっています。たとえば、他のパーツに影響を与えずに、プラットフォーム要素(カーネル、モデム、システム)の1つを(ある程度)変更することはできません。
また、かなり制限があります。新しいバージョンが必要になった場合はどうなりますか?ベンダーのソースを入手できるかどうかはわかりません。
だからここに私が作ったいくつかのフローがあります:
================================================== ===========
ワークフロー1:-新しいバージョンは必要ありません。今すぐリリースデバイスが必要です。
1.最新のパブリックカーネル、チップセットプロバイダーとそのシステムをダウンロードします
2.自分のドライバーをカーネルに追加します
3.独自のソースをビルドに追加します
4.コンパイル->すべてがすでに構成されています
5.デバッグ->少し
6.パッチ->少し
7.リリース->高速
8.アップデートを提供しますか?->失敗!?-チップセットベンダーの新しいカーネル/システムが必要です。
================================================== ================
ワークフロー2:ベンダーは必要ありません
1.グーグル/シアノジェムなどからクリーンなアンドロイドシステムをダウンロードします。
2.ドライバーをカーネルに追加します
3.チップセットベンダーのソースからカーネルパッチを入手します
3.プロプライエタリファイル用のデバイスディレクトリを構築する
4.システムでコンパイルするためにプロプライエタリを設定/パッチします->地獄
5.低レベルのバグの多くに直面->地獄
6.デバッグ/パッチ
7.期限を逃して解雇される
これが主要なモバイルデバイスメーカーで実際にどのように機能するかについて何か考えはありますか?
ありがとう!