`
shukuiyan
  • 浏览: 413816 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android使用Google Map API创建的一个根据经纬度定位的程序二

阅读更多

 

Color.xml 文件内容如下:

<? xml version = "1.0" encoding = "utf-8" ?>

< resources >

  < drawable name = "darkgray" > #808080 </ drawable >

  < drawable name = "white" > #FFFFFF </ drawable >

  < drawable name = "blue" > #0000FF </ drawable >

</ resources >

String.xml 文件内容如下:

<? xml version = "1.0" encoding = "utf-8" ?>

< resources >

  < string name = "hello" > Hello World, QueryMapLocation! </ string >

  < string name = "app_name" > QueryMapLocation </ string >

  < string name = "str_longitude" > 经度(Longitude) </ string >

  < string name = "str_latitude" > 纬度(Latitude) </ string >

  < string name = "str_button1" > 查询 </ string >

  < string name = "str_button2" > + </ string >

  < string name = "str_button3" > - </ string >

</ resources >

QueryMapLocation.java 文件的内容如下:

package org.yan;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import com.google.android.maps.GeoPoint;

import com.google.android.maps.MapActivity;

import com.google.android.maps.MapController;

import com.google.android.maps.MapView;

public class QueryMapLocation extends MapActivity {

          private MapController mMapController01;

          private MapView mMapView01;

          private Button mButton01,mButton02,mButton03;

          private EditText mEditText01;

          private EditText mEditText02;

          private int intZoomLevel=0;

          private double dLat=25.0402555;

          private double dLng=121.512377;

          @Override

          protected void onCreate(Bundle icicle)

          {

            super.onCreate(icicle);

            setContentView(R.layout.main);

            mMapView01 = (MapView)findViewById(R.id.myMapView1);

            mMapController01 = mMapView01.getController(); 

            mMapView01.setSatellite(false);

            mMapView01.setStreetView(true);

            intZoomLevel = 10;

            mMapController01.setZoom(intZoomLevel);

            refreshMapView();

            mEditText01 = (EditText)findViewById(R.id.myEdit1);

            mEditText02 = (EditText)findViewById(R.id.myEdit2);

            mButton01 = (Button)findViewById(R.id.myButton1);

            mButton01.setOnClickListener(new Button.OnClickListener()

            {

              @Override

              public void onClick(View v)

              {

              

                if(mEditText01.getText().toString().equals("")||

                   mEditText02.getText().toString().equals(""))

                {

                  showDialog(" 不能为空");

                }

                else

                {

                  dLng=Double.parseDouble(mEditText01.getText().toString());

                  dLat=Double.parseDouble(mEditText02.getText().toString());

                  refreshMapView();

                }

              }

            });  

            mButton02 = (Button)findViewById(R.id.myButton2);

            mButton02.setOnClickListener(new Button.OnClickListener()

            {

              @Override

              public void onClick(View v)

              {

                intZoomLevel++;

                if(intZoomLevel>mMapView01.getMaxZoomLevel())

                {

                  intZoomLevel = mMapView01.getMaxZoomLevel();

                }

                mMapController01.setZoom(intZoomLevel);

              }

            }); 

            mButton03 = (Button)findViewById(R.id.myButton3);

            mButton03.setOnClickListener(new Button.OnClickListener()

            {

              @Override

              public void onClick(View v)

              {

                intZoomLevel--;

                if(intZoomLevel<1)

                {

                  intZoomLevel = 1;

                }

                mMapController01.setZoom(intZoomLevel);

              }

            });

          } 

          public void refreshMapView()

          {

            GeoPoint p = new GeoPoint((int)(dLat* 1E6), (int)(dLng* 1E6));

            mMapView01.displayZoomControls(true);

          

            mMapController01.animateTo(p);

            mMapController01.setZoom(intZoomLevel);

          }

          

          @Override

          protected boolean isRouteDisplayed()

          {

            return false;

          }

          private void showDialog(String mess){

            new AlertDialog.Builder(QueryMapLocation.this).setTitle("Message")

            .setMessage(mess)

            .setNegativeButton(" 经度纬度请补全", new DialogInterface.OnClickListener()

            {

              public void onClick(DialogInterface dialog, int which)

              {

              }

            })

            .show();

          }

        }

 

还有一个重要的文件AndroidManifest.xml

<? xml version = "1.0" encoding = "utf-8" ?>

< manifest xmlns:android = "http://schemas.android.com/apk/res/android"

      package = "org.yan"

      android:versionCode = "1"

      android:versionName = "1.0" >

    < application android:icon = "@drawable/icon" android:label = "@string/app_name" >

        < uses-library   android:name = "com.google.android.maps" />

        < activity android:name = ".QueryMapLocation"

                  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 = "4" />

< uses-permission android:name = "android.permission.INTERNET" ></ uses-permission >

< uses-permission android:name = "android.permission.ACCESS_COARSE_LOCATION" ></ uses-permission >

< uses-permission android:name = "android.permission.ACCESS_FINE_LOCATION" ></ uses-permission >

</ manifest >

3 )运行该Android 项目,即可见到如下界面


输入经度纬度,即可定位到地图上

  • 大小: 121 KB
分享到:
评论

相关推荐

    Android使用Google Map API创建的根据经纬度定位的程序

    Android使用Google Map API创建的一个根据经纬度定位的程序. 交流QQ群:1279871

    android手机google地图开发时与实际地图上经纬度的转换问题.docx

    这篇文章总结了Google Map API中的经纬度标示方法,并提供了实际示例,展示如何将实际地图上的经纬度转换为Android Google Map可使用的经纬度。 一、Google Map API中的经纬度标示方法 Google Map API使用的经纬度...

    基于android的google map API应用设计

    在基于Android的Google Map API应用设计中,开发者可以利用谷歌提供的API来构建一系列与地理位置相关的功能,极大地丰富了移动应用程序的用户体验。以下是基于这个主题的一些关键知识点: 1. **Android平台**:...

    ex_map.rar_android_android mapa_android mapapi_ex_map_google ear

    本教程将深入探讨如何使用Android MapAPI以及如何在Android虚拟机上引用Google Earth,以便为用户提供更丰富的地图体验。 首先,让我们了解Android MapAPI。Android MapAPI是Google提供的一种服务,它允许开发者在...

    Android 根据经纬度获取地址

    1. **Google Play服务**:Google Play服务是Android应用程序开发中的一个重要组件,它提供了许多API,包括定位、地图、游戏服务等。要使用基于经纬度的地理编码功能,开发者需要在项目中引入Google Play服务库。 2....

    Android_Map_Api_使用和开发定位

    ### Android Map API 使用与开发——定位功能详解 #### 一、概述 在移动应用开发领域,尤其是基于地理位置的服务(LBS)应用中,Android Map API 的使用变得日益重要。通过 Android Map API,开发者可以轻松地将...

    android Google map 定位程序

    首先,要在Android应用中使用Google Map,你需要在Google Cloud Platform上创建一个项目并获取API密钥。这个API密钥是你的应用与Google Maps服务交互的关键。访问Google Cloud Console,创建新项目,然后在APIs & ...

    Android-Google-Map-APi.doc.zip_android_google map android

    **Android谷歌地图API** 在Android应用开发中,Google Maps API是一个至关重要的组件,它允许开发者在应用程序中集成谷歌地图的功能,提供丰富的地理位置服务。本文档将深入探讨Android Map API v1,这一版本虽然已...

    Android_Google_Map.rar_Google api_android_android google map_and

    在Android应用开发中,Google Maps API是一个至关重要的组件,它允许开发者将地图功能集成到自己的应用程序中,提供导航、定位、标记等丰富的功能。本文将深入讲解如何进行Android Google Map的开发入门,从搭建环境...

    android google map 应用

    要使用Google Maps Android API,首先需要在Google Cloud Console中创建一个新的项目,并启用Google Maps Android API。接着,获取API密钥,将其添加到AndroidManifest.xml文件中的meta-data标签中,以便应用能够...

    Android的mapApi

    在Android开发中,Map API是不可或缺的一部分,它允许开发者在应用程序中集成地图功能,为用户提供地理定位、导航、兴趣点搜索等服务。Android的Map API主要由Google Maps Android API v2提供,它基于Google Maps...

    android安卓绝对可以获取GPS经纬度的google map demo

    使用谷歌api,不需要网络,可以直接获取经纬度,获取经纬度写到一个类中,直接调用start,关闭使用stop。 注意要在室外使用! 打开应用,马上开始获取地址,多次点击 第一个按钮: 获取gps经纬度, 如果程序获取到...

    Android演示如何调用google map api 的方法.rar

    本实例主要演示Android调用google map api 的方法,根据地址获取对应经纬度,定义一个HttpClient用于向指定地址发送请求,向指定地址发送get请求,将服务器返回的字符串转换成JSONObject对象,从JSONObject中提取...

    安卓开发-android写的google map api 应用.zip.zip

    在Android开发中,Google Maps API是一个非常重要的工具,它允许开发者在应用程序中集成地图功能,为用户提供导航、定位、地理编码、路线规划等服务。这个压缩包“安卓开发-android写的google map api 应用.zip.zip...

    android google map 导航

    在整个过程中,确保遵循Google Maps API的使用政策,并根据需要申请并使用有效的API密钥。在实际开发中,还应该考虑性能优化、错误处理以及用户体验等方面。如果你遇到问题或有技术讨论,可以加入相关的技术交流群,...

    基于android和google_map的地图定位程序的设计与实现.rar

    在地图上显示定位点,我们需要创建一个MarkerOptions对象,设置其位置(根据设备的经纬度),并添加到地图上。此外,还可以监听地图的移动事件,以便更新定位点。 对于更复杂的应用,可能需要实现定位精度的优化,...

    Android结合googlemap应用开发

    本文将详细介绍如何在Android设备上实现这一功能,主要涉及Google Directions API的使用和解析返回的路线数据。 首先,Google Directions API是一个HTTP服务,它允许开发者通过发送请求来获取多个地理位置之间的...

    Android Google Map v2,继承FragmentActivity 使用MapFragment实现定位

    在Android应用开发中,Google Maps API v2是一个强大的工具,它允许开发者集成地图功能到他们的应用程序中,包括定位、导航、标记等。本教程将详细讲解如何在Android项目中使用Google Maps API v2,通过继承`...

Global site tag (gtag.js) - Google Analytics