Android开发之Location用法实例分析

 更新时间:2016年10月24日 10:23:35   作者:pku_android  
这篇文章主要介绍了Android开发中Location用法,结合实例形式分析了Android使用location控件获取经纬度信息的相关操作技巧,需要的朋友可以参考下

本文实例讲述了Android开发中Location用法。分享给大家供大家参考,具体如下:

Location 在Android 开发中还是经常用到的,如通过经纬度获取天气,根据Location 获取所在地区详细Address (比如Google Map 开发)等。而在Android 中通过LocationManager来获取Location .通常获取Location 有GPS 获取,WIFI 获取。

这边介绍一个简单的小Demo ,来教大家如何获取Location ,从而获取经纬度。

第一步:创建一个Android 工程命名为LocationDemo .

第二步:修改main.xml 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
<TextView
  android:id="@+id/longitude"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:text="longitude:"
  />
<TextView
  android:id="@+id/latitude"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:text="latitude:"
  />
</LinearLayout>

第三步:修改LocationDemo.Java ,代码如下:

package pku.ss;
import pku.ss.R;
import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
public class LocationDemoActivity extends Activity {
  private TextView longitude;
  private TextView latitude;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    longitude = (TextView)findViewById(R.id.longitude);
    latitude = (TextView)findViewById(R.id.latitude);
    Location mLocation = getLocation(this);
    longitude.setText("Longitude: " + mLocation.getLongitude());
    latitude.setText("Latitude: " + mLocation.getLatitude());
  }
  //Get the Location by GPS or WIFI
  public Location getLocation(Context context) {
    LocationManager locMan = (LocationManager) context
        .getSystemService(Context.LOCATION_SERVICE);
    Location location = locMan
        .getLastKnownLocation(LocationManager.GPS_PROVIDER);
    if (location == null) {
      location = locMan
          .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
    }
    return location;
  }
}

第四步:增加权限,修改AndroidManifest.xml 代码如下(第16行为所增行):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="pku.ss"
   android:versionCode="1"
   android:versionName="1.0">
  <application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".LocationDemo"
         android:label="@string/app_name">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
  </application>
  <uses-sdk android:minSdkVersion="7" />
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>

第五步:运行LocationDemo 工程,所得效果如下:

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android控件用法总结》、《Android视图View技巧总结》、《Android操作SQLite数据库技巧总结》、《Android操作json格式数据技巧总结》、《Android数据库操作技巧总结》、《Android文件操作技巧汇总》、《Android编程开发之SD卡操作方法汇总》、《Android开发入门与进阶教程》及《Android资源操作技巧汇总

希望本文所述对大家Android程序设计有所帮助。

相关文章

最新评论