badaプラットフォームの開発上の問題について

2010年5月17日に、Samsung bada開発者チャレンジが開始されました。これには、グローバル開発者チャレンジとローカル開発者チャレンジが含まれていました。 ロシアを含む地域大会が開催されました。

画像

一般に、habrのSDKについては、すでにhabrahabr.ru/blogs/development/101196およびhabrahabr.ru/blogs/mobiledev/105451に記述されています。



小さな貢献を追加しましょう...



悪いアプリケーション(特に複雑なグラフィックアプリケーション)を書くことは困難です。 したがって、プラットフォームで大量にそれらを待機しないでください。 プラットフォームは動的に開発されていますが、たとえばbada 2.0では状況が改善されることが期待されています。

GUIには通常のフレームワークはありません(グラフィカルに複雑なことを行う唯一の通常の方法は、OnDraw自体にピクセルで描画することです)。 視覚的なGUIエディターがありますが、ショー用としてより多く存在し、非常に制限されており、Hello Worldレベルにのみ適しています。

手動のメモリ管理、およびシミュレータで監視がまだ可能である場合、動作中にプログラムがメモリを消費する量は、実際のハードウェアでは機能しません(正直にドキュメントで警告されています)。 どういうわけか、アプリケーションの流れがいかに少ないかを理解するには、たとえば、電話がリソース不足であると呪いを開始し、すべてを閉じる時が来たときに、二次的な兆候によってのみ可能です。 したがって、主な方法はコードとヘッドに注意を払うことです。



なんとかこれらすべての問題に対処し、最初のアプリロードのために製品を提供することに成功した後、1週間待った後、5つのバグに関するレポートを受け取りました。 それらの3つにはビデオクリップが含まれ、1つはスクリーンショットにすぎません。 それらのうち3つは明らかで、すぐに修正されましたが、他の2つは...



まず、GPSがオンになり、衛星が捕捉されますが、アプリケーションはGPSによって座標を決定しません。 証拠として、アプリケーションからのスクリーンショット(信号なし)およびこれらの座標を正常に表示したネイティブクライアントのスクリーンショットが提供されました。 座標の決定がアプリケーションの基本的な機能であり、機能することは明らかです(私たちの家でこのようなバグを見たことはありません)。 どのような条件下でバグが発見されたか-言葉ではなく、1つのスクリーンショットのみ。 質問は、そのような振る舞いにつながる特定のステップについて尋ねられました。



2つ目:音声メモの記録中にアラームがトリガーされた場合(地図上のポイントにメモを記録して添付する機能があります)、音なしで機能します。



これらのバグはどちらも私たちを困惑させました。 まず、アプリケーションは標準のシステムサービスから座標を受け取ります。何かが機能しない場合、おそらくこれらは私たちの問題ではありません。 しかし、それを証明する方法は? 2つ目-再び、アプリケーションがフォーカスを失うと、レコーダーと他のリソースが正しく閉じられます。なぜ、目覚まし時計が音なしで起動するかは完全に理解できません。



ちなみに、ネイティブレコーダーも同じように機能することがわかりました。 オペレーティングシステムを開発したプログラマーが合理的に考えた疑いがあります。マイクが現在録音されている場合、アラームを開始するとサウンドストリームが「詰まる」ことになります。 そして、この時間アラームをオフにしました。 おそらくこれは正しいです。



これらのバグとの戦いにはもう少し時間がかかりましたが、それでも私たちはそれを見つけました。

そして、問題を次々と解決して、成功したと認められただけでなく、ロシアのバダ開発者チャレンジの主賞も受賞したアプリケーションを作成しました! 現在、競合他社の1位を獲得し、ユーザーに製品を試して評価する機会を提供しています。



PS。 グローバルな競争が終了するまで、アプリケーションはSamsung Storeで利用できませんが、他のプラットフォームで同様のアプリケーションを試すことができます(これまでのところ、地図はありません)。



All Articles