android开发_Location位置定位

新建项目:

1 New Android Project->
2 Project name:Location
3 Build Target:Android 2.2
4 Application name: AppWidget
5 Package name:com.b510
6 Create Activity:MainActivity
7 Min SDK Version:9
8 Finish

项目结构:

运行效果:

代码部分:

AndroidManifest.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 3       package="com.b510"
 4       android:versionCode="1"
 5       android:versionName="1.0">
 6     <uses-sdk android:minSdkVersion="9" />
 7 
 8     <application android:icon="@drawable/icon" android:label="@string/app_name">
 9         <activity android:name=".MainActivity"
10                   android:label="@string/app_name">
11             <intent-filter>
12                 <action android:name="android.intent.action.MAIN" />
13                 <category android:name="android.intent.category.LAUNCHER" />
14             </intent-filter>
15         </activity>
16 
17     </application>
18     <!-- from android api:Allows an application to access fine (e.g., GPS) location  -->
19     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
20 </manifest>

main.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:orientation="vertical"
 4     android:layout_width="fill_parent"
 5     android:layout_height="fill_parent"
 6     >
 7         <!-- 表示经度 -->
 8     <TextView  
 9         android:id="@+id/longitutde"
10         android:layout_width="fill_parent" 
11         android:layout_height="wrap_content" 
12         />
13           <!-- 表示纬度 -->
14     <TextView  
15         android:id="@+id/latitude"
16         android:layout_width="fill_parent" 
17         android:layout_height="wrap_content" 
18         />
19 </LinearLayout>

MainActivity.java

 1 package com.b510;
 2 
 3 import android.app.Activity;
 4 import android.content.Context;
 5 import android.location.Location;
 6 import android.location.LocationManager;
 7 import android.os.Bundle;
 8 import android.widget.TextView;
 9 
10 public class MainActivity extends Activity {
11     /** 显示经度 */
12     private TextView longitude;
13     /** 显示维度 */
14     private TextView latitude;
15 
16     /** Called when the activity is first created. */
17     @Override
18     public void onCreate(Bundle savedInstanceState) {
19         super.onCreate(savedInstanceState);
20         setContentView(R.layout.main);
21 
22         //从xml中找到已经定义好的TextView:longitude,latitude
23         longitude = (TextView) findViewById(R.id.longitutde);
24         latitude = (TextView) findViewById(R.id.latitude);
25         //初始化一个location
26         Location location = getLocation(this);
27         //设置TextView控件的显示信息:经度和维度
28         longitude.setText("经度:" + location.getLongitude());
29         latitude.setText("维度:" + location.getLatitude());
30     }
31     @SuppressWarnings("static-access")
32     private Location getLocation(Context context) {
33         //You do not instantiate this class directly;
34         //instead, retrieve it through: 
35         //Context.getSystemService(Context.LOCATION_SERVICE).
36         LocationManager locationManager = (LocationManager) context
37                 .getSystemService(context.LOCATION_SERVICE);
38         //获取GPS支持
39         Location location = locationManager
40                 .getLastKnownLocation(locationManager.GPS_PROVIDER);
41         if (location == null) {
42             //获取NETWORK支持
43             location = locationManager
44                     .getLastKnownLocation(locationManager.NETWORK_PROVIDER);
45         }
46         return location;
47     }
48 }

 

 

posted @ 2012-11-19 22:14  Hongten  阅读(8411)  评论(0编辑  收藏  举报
Fork me on GitHub