Sony Xperia向けAndroid 4.3の詳細

ご存知のように、最近はソニーとAndroidのすべてのファンにとって重要な日でした。GoogleはAndroid 4.3のソースコードを公開しました。 ソフトウェアの更新は、デバイスでの作業の非常に重要な側面であり、このプロセスの改善と高速化に絶えず取り組んでいます。 それがどのように組織されているかについての短い物語の翻訳をあなたの注意にもたらします。 habrakatへようこそ!











一般に、ソフトウェアの更新プロセスは、開発、テスト、認証、承認の4つの段階で構成されています。 開発段階では、ソフトウェアがデバイス上で安定して動作することを保証するとともに、新旧の独自機能(Walkman、STAMINAなど)を統合します。 ICSの開発と比較して、このプロセスは、主にGoogleおよびQualcommとの緊密なコラボレーションにより、より効率的になりました。



テスト、認証、承認の段階では、ソフトウェアが技術標準と規制要件に準拠していることを確認する必要があります。 これにより、当社製品のすべてのコンポーネントが正しく動作するかどうか、当社製品が徹底的にチェックされます。





アップグレード作業のプロセス-ソースコードから完成した更新まで。





更新の計画を担当するプロダクトマネジメントプログラムマネージャー、Fredrik Extrand



開発段階で最初に行うことは、Androidシステムカーネル(ブート、カーネル、ハードウェアコンポーネント)がデバイス上で正しく安定して動作することを確認することです。これは、さらなる統合に必要な条件です。



プロセスの重要な変更点は、プラットフォーム開発キット(PDK)の一部としてGoogleから特定のプレリリースデータを受け取ることです。これは、Androidの新しいバージョンのリリースの数週間前に開発者に配布されます。 PDKのおかげで、HALのどの部分を更新する必要があるかがわかっているため、はるかに早く更新作業を開始できます。



PDKは、デバイスおよびチップセットのメーカーがドライバーを移植し、ネイティブAndroidビルドを開発、テスト、および最適化できるようにする一連のファイルです。 PDKには、Android HALのインターフェイスセット、統合プラットフォームのソースコード、システムのバイナリイメージ、および必要なすべてのドキュメントが含まれています。





この図は、ソフトウェア更新プロセスがPDKおよびAOSPでどのように改善されたかを示しています。



「PDKにアクセスすることで、はるかに早く開発を開始できます。 AOSPのおかげで、Androidの新しいバージョンのソースコードが利用可能になり次第、更新作業を開始できます。 この画像は説明のみを目的としており、実際の時間枠を反映するものではないことに注意してください



開発フェーズのもう1つの重要な部分は、HALコンポーネントの構成です。 困難な点は、さまざまなチップ、カメラ、センサー、ディスプレイなどを使用していることです。 もちろん、それらのすべてがリファレンスデザインに対応しているわけではなく、新しいソフトウェアと再統合する必要があります。この作業はすべて私たちにあります。 重要な部分はセンサー用のHALです。DASHと呼ばれるセンサー用の動的HALを開発しました。そのソースコードはGitHubで既に利用可能です。 DASHで行うすべての変更は、センサーの構成ファイルを含め、GitHubでも公開されます。







AndroidカーネルとHALの基本的な作業が完了し、結果が非​​常に安定したら、通話、メッセージング、インターネット接続などの基本的な機能が動作するようになります。 この段階では、通常、「ドッグフーディング」、つまり開発プロセスに直接関与していないユーザーのサークル間での新しいソフトウェアの内部配布を開始します。 この段階では、一部の機能がまだ実装されておらず、さまざまなエラーが発生する可能性がありますが、リリースはすでに日常使用に十分安定しています。 これにより、多くの有益なフィードバックが提供され、さまざまな欠陥を早期に検出して修正することができます。



「ソフトウェア開発には、プログラムが実証できるほど安定していれば、作業の90%がまだ先に進むという経験則があります。 ICSの作業中、2週間でこの段階に達しました-ビルドは通常の使用には十分であり、軽微な障害はカウントしませんでしたが、同時に、さまざまなブランドの機能を統合してすべてのバグを見つけるための多くのルーチン作業がまだありましたオペレーティングシステムの隅々」とFrederic Extrand氏は言います



この段階でのもう1つのタスクは、基本的な「Android」とバージョンを区別する、独自のソフトウェア修正と改善の統合です。 コードの断片化を避けるため、これらのパッチのほとんどはAndroidオープンソースプロジェクトに送信され、将来的には新しいリリースのコードに含まれます。 また、この段階では、独自のグラフィックコンポーネント、ユーザーインターフェイス、独自の多数のAPIを統合し、さまざまな地域のさまざまなオペレーターでデバイスが正しく動作するようにします。



「-AOSPが導入されたという事実は、修正と改善の作業を容易にし、長期的にはAndroidの各新バージョンに統合するためのパッチを大幅に少なくする必要があることを意味します。」



すでにこの段階で、継続的なテストが進行中です。 まず、新しい変更と改善の確認に焦点を当て、次に、以前の開発とGoogleが開発したコンポーネントも適切なレベルで機能することを確認する必要があります。



前述のように、Androidのバージョンとベースを区別する独自の機能をいくつか追加します。 これらには、新しいロック画面、デスクトップ、電話帳、ウォークマンプレーヤー、ビデオプレーヤー、フォトアルバム、メッセージングアプリ、設定画面、テキスト入力、カレンダー、メールクライアント、ローカリゼーション、およびさまざまなユーザーインターフェイスコンポーネントが含まれます。 デバイスにはAndroid 4.3の動作バージョンが既にあるため、開発者はAOSPで独自のコンポーネントを直接テストできます。



すべての開発が結合されると、ソフトウェアの安定性を意図的にテストし始めます。 純粋な「実験室」テストと「ドッグフード」に加えて、社内外の多くのユーザーに依存しています。 クリーンな安定性テストに加えて、エネルギーテストを実施しています。 製品が安定して完全にテストされた後、認証時間が来ます(ただし、たとえば、最初の段階で他のコンポーネントよりも前に準備が整っているコンポーネントがある場合、他のコンポーネントよりも早く認証のために送信されます)。 ハードウェアとソフトウェアがBluetooth、Wi-Fiなどの標準に準拠していることを確認する必要があります。 これらはすべて、当社の製品でこれらの技術を使用するために必要であり、もちろん、最高の品質を確保するために行われます。 また、この段階で、たとえば知的財産に関連するさまざまな法的問題を解決します。 可能な場合は常にグローバル証明書を取得しようとしますが、場合によっては特別なローカル認証が必要になり、合計で80か国で特別な証明書を取得する必要があります。そのためには、独自のテストを実施し、製品が合格した証拠を提供するか、これらは外部テスターです。 多くのユーザーは、ICSアップデートのリリースの遅延について不満を述べ、遅い開発者に誓いましたが、それは間違っていました。開発フェーズは時間通りに完了し、遅延は認証と承認の段階で正確に生じました。



すべての証明書と許可を受け取ったら、最終的にアップデートを正式にリリースし、世界中で配布を開始する準備ができました。 もちろん、大企業は柔軟性と速度が十分ではないことを認識しており、時には複数のプロジェクト間で労力とリソースを分配する必要があり、これも追加の困難をもたらしますが、このプロセスを最適化および高速化し、各バージョンを作成しようと常に努力していますできるだけ早く出て、可能な限り高品質でした。



「明らかに、誰もがすぐにアップデートの準備が整うことに興味があります。作業を始めたばかりなので、今は言えませんが、この作業をできるだけ早く完了するために必要なものはすべて揃っていると確信できます」



もちろん、これはアップデートの作業プロセスを多少簡略化した説明ですが、イノベーションと改善について必要なアイデアを提供してくれることを願っています。



ここで元の投稿に慣れることができます



All Articles