2011-08-05 8 views
0

既存のAndroid Appに機能を追加する予定です。私はAndroid Appsをプログラミングする上での経験がないので、このような機能をどのように実装できるか知りたいです。私はすでにそれについていくつかの時間を調査し、また、Android Appsに関するいくつかのチュートリアルを行った。現時点ではAndroid:LBS AppでGPSロギング機能を構成する方法

私の考えは次のようになります。

私が何かをするユーザーのために、通常のActivityを開始したアプリケーションを持っています。このActivityは既に存在していて、私の心配ではありません。 onCreate()さらに、while(true) -loop内の位置更新を定期的に要求するサービスを開始し、その結果をデータベースに保存するContentProviderに送信する必要があります。

はまた、その後GmapでのプレゼンテーションのためのDBからAsyncTask保存された場所にロードGmapsActivityをトリガーするGmapsビューを起動するための新しいメニュー項目があるはずです。彼は、ロギングServiceダウンをシャットまたはユーザーが後でGmapsに彼の旅行を見直すことができることを継続するのが好きならば

onDestroy()はそれが短いDialogでユーザーに求めます。

この方法で機能を作成することはできますか?私は別のものを追加する必要がありますか、それとも別の方法でその一部を行う必要がありますか?

答えて

1

のonCreate()がさらにregulary要求(真)一方、内部位置更新が - ループとSQLiteのDBにnessesary情報を格納するのContentProviderに結果を送信するサービスを開始すべきです。

これはお勧めできません。 LocationManagerは、これをリスナー経由で実現するのに役立ちます。 http://developer.android.com/guide/topics/location/obtaining-user-location.htmlが見つかりませんでした。もう一つの良いリソースはhttp://android-developers.blogspot.com/2011/06/deep-dive-into-location.html

+0

なので、サービスの代わりに私はLocationManagerを動作させますか?あれは正しいですか?これは、ユーザーがアプリケーションをシャットダウンしたいと思うかもしれないが、依然としてロギングを続けることを望む場合にも対応できますか? – erikbwork

+0

いいえ、それは私が意味するものではありません。 LocationManagerをポーリングするのではなく、http://developer.android.com/reference/android/location/LocationListener.htmlを使用しています。サービスを使用する/使用しない場合は、ユーザーがアプリケーションを使用しているかどうかにかかわらず、「この操作(場所の追跡)は必要ですか?」と尋ねる必要があります。そうした場合は、サービスを使用してください。 –

関連する問題