Androidランチャー。 開発者の3つの間違い

すでに2014年10月のように、私はスマートフォンとそのシェルとのやり取りの経験について、Android向けの理想的なランチャーのプレゼンテーションについての投稿を書きました。







それ以来、実に多くの時間が経ちました。 そして、その時点で私が「土を探る」だけだった場合、私はテストアセンブリで作業し、Googleの標準ソリューションのソースコードを調査し、クラウドファンディングプラットフォームでのアイデアの提示とユーザーレビューの理解に備えて、今、完成品について話しています。



10月14日から今日まで、一連の試行錯誤、1,000杯のコーヒー、眠れぬ夜がありました。これは、お気に入りのプロジェクトに取り組むことによってのみ達成できる貴重な体験でした。 だから、まず最初に。



ランチャーの開発に取り組むと、それらがどのように記述され、どの程度の機能が閉じられるかを想像することは困難でした。 誰が知っているか、私はそのようなプロジェクトを再び引き受けることに決め、どれだけの仕事をするべきかを知っている。 そして、まず考慮に入れなければならないささいなことの数が大きいことは素晴らしいことです。 その機能を実装し、OSと画面サイズのさまざまなバージョンに合わせてランチャーを最適化することについて話します。 現時点では、ランチャーは実際のウイルスと同様に、使用可能なセキュリティ許可のほとんどすべてを収集しましたが、私が思いついた「スマートタイル」はAndroydの多くの側面と相互作用するため、他の方法はありませんでした。





そして、それはスクリーンショットだけではありません。



競合他社が研究されたとき、アイデアを実装するための法的根拠を探す時が来ました。私はそのようなボリュームのアプリケーションをゼロから書きたくありませんでした、そしてそのような機会はありませんでした。 選択は、grepCodeでプルされたデフォルトのgugolovsky "launcher2"で決まりました。 これがいかに合法かはわかりませんが、オープンソースがあることは確かです。 これは、クラシックランチャーのかなり古いバージョンであることに注意してください(既にバージョン5があります)。 振り返ってみると、これが最初で最も重大な間違いだったと言えます。 このデータベースは非常に古いことが判明し、たとえばデスクトップの数の基本的な管理など、そのような「必要な」ものをどのように持つかを知りませんでした。 「なぜ新しい基地ではないのですか?」とあなたは尋ねます。 その瞬間、以前のバージョンのAndroidの下位互換性について考えていました。



その後、アプリケーションがまったくコンパイルされず、システムの次のバージョンでのみ表示されるか、または特別な正式なライブラリセットに存在するクラスを必要とするため、テンプレートにブレークがありました。 解決策のヒントすら探して、インターネット上でスヌープし、ドングリのコンポーネントを身に着けているScratumリスのように感じて、プロジェクトを四方八方から押し出しました。 その結果、ランチャーは完全に予想外のクラスに膨れ上がりましたが、コンパイルを開始しました。



さらに、それは少し簡単でした-不要なコンポーネントを取り除く必要がありました。 簡単! しかし、これは間違い2番でした-どこかで私はそれを過剰にし、まったく不要なものを取り除きました。 その後の分析と失われたものの回収には多くの時間と労力がかかりました。



次のステップは「タイル」でした。 そして、彼らの仕事の理解はありましたが、実際、すべてがそれほどスムーズになったわけではありません。 いくつかのレベルのイベントインターセプターで構成されるデスクトップ上のジェスチャ制御システムのコストはいくらですか。チェーンに沿ってイベントを委任するか、それを吸収します。 さらに、すべてが標準イベントモデルの上に記述されています。 長い間、ソースを探り、コンポーネントに到達する前に誰がイベントを結び付けているのかを理解しようとしていました。



コンテキスト内のウィジェットの場所など、理由なしにサードパーティアプリケーションによっていくつかの機能を実行するため。 Android 4.4では、この操作をユーザーに確認してウィジェットを配置する許可をリクエストできる機能が追加されました。 システム許可は使用できませんでした、なぜなら それを使用するアプリケーションは、システム全体のビルドと同じ署名を持っている必要があります。



また、写真をすり抜けたくない「ミニギャラリー」、すべてのインスタントメッセンジャーと一度に友だちになる「SMSタイル」、無限の驚きに満ちた「クイック設定」もありました。



リストされている問題の大部分を克服し、多かれ少なかれ適切な状態にすることで、Google PlayでSlideUP Launcherを公開することにしました。これは3番目の重大な間違いでした。 生の製品は誰にも成功をもたらしていないので、なぜ説明する必要はないと思います。



PS今後は、ランチャーが新しいベースにゼロから書き直され、機能が追加され、膨大な数のエラーが修正されました。 そして、私はこれが道の終わりではないことを理解しています:強固な基盤がありますが、やるべきことがたくさんあります。アイデアに問題はありません。 次回、最初からやり直すという決定について書こうと思いますが、ロリポップは驚いたことなどたくさんあります。 sayingにもあるように、「続ける...」



All Articles