欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开发之Location用法实例分析

程序员文章站 2024-03-03 20:31:22
本文实例讲述了android开发中location用法。分享给大家供大家参考,具体如下: location 在android 开发中还是经常用到的,如通过经纬度获取天气,...

本文实例讲述了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开发之Location用法实例分析

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

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