スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Android GPSの取得

GPSを利用する	
AndroidではGPSの利用が可能です。
GPS利用時には
1.利用するプロバイダ
2.受信する時間(ミリ秒)
3.受信する距離(m)
4.位置情報受信時にCallするリスナー
の4つを指定します。
■GPSプロバイダについて
GPSを受信するために2つのプロバイダが利用できます。(AndroidSDK1.6時)
GPS: 端末から位置情報を受信します。メリットは精度が高いこと、デメリットは電力消費が高いことです。
NETWORK: 基地局から位置情報を受信します。メリットは電力消費が少ないこと、デメリットは精度が悪いことです。
GPSは精度が高いが、電力消費が悪く、また室内ではほぼ利用できません。NETWORKは電力消費が低く、室内でも
利用できますが、精度が低すぎます(ぜんぜん違う位置を取得します)
■GPSの取得サンプル
簡単なGPS取得サンプルです
※GPS情報の取得
○サンプルソース
1: package test.sample.gps;
2:
3: import android.app.Activity;
4: import android.content.Context;
5: import android.location.Location;
6: import android.location.LocationListener;
7: import android.location.LocationManager;
8: import android.os.Bundle;
9: import android.util.Log;
10:
11: public class GPSTest extends Activity implements LocationListener{ ①
12: private LocationManager locManager;
13:
14: @Override
15: public void onCreate(Bundle savedInstanceState) {
16: super.onCreate(savedInstanceState);
17: setContentView(R.layout.main);
18: //ロケーションマネージャのインスタンス取得
19: locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); ②
20: //1:GPSプロバイダ 2:受信時間(ミリ秒) 3:距離(m) 4:LocationListenerインスタンス(自身)
21: locManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000,1, this); ③
22:
23: }
24: @Override
25: public void onLocationChanged(Location location) { ④
26: Log.d("Test","Latitude"+ location.getLatitude()); //緯度
27: Log.d("Test","Longitude"+ location.getLongitude()); //経度
28: Log.d("Test","Accuracy"+ location.getAccuracy()); //精度
29: Log.d("Test","Altitude"+ location.getAltitude()); //標高
30: Log.d("Test","Time"+ location.getTime());
31: Log.d("Test","Speed"+ location.getSpeed());
32: Log.d("Test","Bearing"+ location.getBearing());
33: }
34: public void onProviderEnabled(String provider) {}
35: public void onProviderDisabled(String provider) {}
36: public void onStatusChanged(String provider, int status, Bundle extras) {}
37:
38: }
①GPS取得時のLocationListerを実装する
②Locationマネージャのインスタンスを取得します
③GPSを取得する精度を設定しいます。第四引数にはLocationaListenerを指定します
今回は自身に実装するため「this」となります
④GPSの取得時にonLocationChangeメソッドがCallされます
○マニフェストファイル
1:	<?xml version="1.0" encoding="utf-8"?>																	
2: <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3: package="test.sample.gps"
4: android:versionCode="1"
5: android:versionName="1.0">
6: <application android:icon="@drawable/icon" android:label="@string/app_name">
7: <activity android:name=".GPSTest"
8: android:label="@string/app_name">
9: <intent-filter>
10: <action android:name="android.intent.action.MAIN" />
11: <category android:name="android.intent.category.LAUNCHER" />
12: </intent-filter>
13: </activity>
14: </application>
15: <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> ①
16: </manifest>

①GPSを利用する際は、「ACCESS_FINE_LOCATION」を指定します
エミュレータでのテスト時は「ACCESS_MOCK_LOCATION」の指定が必要です。
スポンサーサイト

テーマ : データベース
ジャンル : コンピュータ

コメントの投稿

非公開コメント

おすすめアプリ
カテゴリ
最新記事
リンク
アクセスカウンター
アクセス解析
imobile
i-mobile
i-mobile
i-mobile
i-mobile
i-mobile
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
Amazon
Androidお勧め参考書
EC studio
商品
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。