特定のデバイスでのみ発生するエラーをトラブルシューティングする戦略


12

Android開発者として、私がアプリを作成する対象市場は非常に細分化されています。特定の要件を指定できます。たとえば、アプリはAndroidバージョンxx以降のみをサポートしますが、特定の1つの電話モデルでのみ明らかなエラーが発生する場合があります。

問題の電話を購入せずに、デバイス固有のエラーを処理する戦略はありますか?テスト用に一連の電話を維持していますが、2〜3人のユーザーが電話のモデルでのみ発生するバグがあると報告した場合、外出して新しい電話を購入する余裕はありません。

他のAndroid開発者が過去に同様の問題に遭遇したことは間違いないと思います。また、デバイス固有のバグを解消するのに役立つ費用対効果の高い戦略を知りたいと思います。

更新して、いくつかの詳細を追加します。

  • Bugsenseを使用してバグレポートをキャプチャするため、例外がスローされるたびに、電話機のモデル、スタックトレース、ユーザーに発生した回数、およびその他の詳細を知ることができます。
  • ユーザーは異なる国にいる可能性があるため、携帯電話を借りることができるとは思いません。

このようなシナリオを想像してください。100人のユーザーがアプリをインストールしましたが、ボタンを押すとボタンが適切に機能しないと3人が不満を言いました。私がテスト用に持っている電話のモデルはどれも問題を経験していません。問題のある携帯電話モデル用のエミュレーターはないようです。


2
私たちの地元のインキュベーターは、地元の携帯電話会社と協力して、この問題を正確に解決するモバイルハンドセットライブラリを作成しました。
ハンネル14年

あなたはあなたの質問に立ち向かい、再開するよう求めました。答えを選ぶ際には、できるだけ多くのことを考えてください。
ジェフ14

回答:


10

数年前、私はPalmデバイス用のソフトウェアを開発するのと同じ問題に遭遇していました。明らかな戦略がいくつかあります。

  • ユーザーにテストの支援をしてもらいます -ベータテストプログラムを用意し、アプリにエラーに関する適切な情報を提供し、バグを報告する良い方法を提供します。
  • デバイス固有のエミュレーターを使用する

ただし、どちらも非常に制限されています。実際のデバイスを持っていることに代わるものはありません。

私が出会った興味深いことの1つは、数百の実際のAndroidデバイスをリモートでテストできるAppThwackです。私は個人的にこれについての経験はありませんが、有望に見えます(あなたの問題に対する簡単で安価な答えがないことを強く示しています)。


1
AppThwackの場合は+1。デバイスには大量のデバイスがあり、特定のデバイスプールでテストを指示できます。スクリーンショットを撮るようにインストルメンテーションに指示すると、各デバイスのクラッシュログを取得できます。すべての既知のデバイスを手元に置いていないことのかなり良い代替手段です(=
デビッドカウデン14年

「最高のテストプログラム」の+1、バッテリー追跡Androidアプリ用の1つ。奇妙な結果を得てデバッグ出力を得たユーザーにそれを送信したとき、それは非常にWTFの瞬間でした:彼は何らかの形で彼自身の電話を台無しにして、Android自体が1分間に60%のバッテリー、40%がバッテリーを報告した、次は80%で、飛び回っていました。その時点でアプリを修正することはできません。電話を修正する必要がありました。
イズカタ14年

-1

残念ながら、この問題に対する簡単な答えはありません。

@ dan1111の回答絞り込むにはユーザーにAndroid のテスト支援してもらう

  • 重要なコンテキスト情報を記録する多くのログステートメントをandroid-appに追加します
    • データベース「/data/data/my.namespace.com/databases/myDatabase.db」を開くか、または
    • 現在webservice "my.server.com/loadingOrder(id=22)"を呼び出しています
  • ローカルデバッグログを読み取ることができるデバイスにalogcatをインストールし、フィルターを設定して問題の原因を追跡してログを送信する方法をユーザーに 指示してください。

alogcatをインストールするポイントは何ですか、OPは既にそのようなものを持っていると言いますが、「Bugsenseを使用してバグレポートをキャプチャします。私のユーザーに起こった、および他のいくつかの詳細...」
gnat 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.