android-Android百度地图API onReceiveLocation

问题描述

Android百度地图API onReceiveLocation
onReceiveLocation 在模拟器上运行可以触发 移动到真机上onReceiveLocation触发不了
不知道为什么
<?xml version=""1.0"" encoding=""utf-8""?>
package=""com.example.baidumapdingwei""
android:versionCode=""1""
android:versionName=""1.0"" >

<uses-sdk    android:minSdkVersion=""19""    android:targetSdkVersion=""19"" /><application    android:allowBackup=""true""    android:icon=""@drawable/ic_launcher""    android:label=""@string/app_name""    android:theme=""@style/AppTheme"" >    <!-- service -->    <service     android:name=""com.baidu.location.f""     android:enabled=""true""     android:process="":remote"">    </service>    <!-- meta-data需要写在application中 -->    <meta-data        android:name=""com.baidu.lbsapi.API_KEY""        android:value=""66iOAPAecwuaafXjw2XgaAGf"" />    <activity        android:name=""com.example.baidumapdingwei.MainActivity""        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-permission android:name=""android.permission.ACCESS_COARSE_LOCATION"" >    </uses-permission>    <uses-permission android:name=""android.permission.ACCESS_FINE_LOCATION"" >    </uses-permission>    <uses-permission android:name=""android.permission.ACCESS_WIFI_STATE"" >    </uses-permission>    <uses-permission android:name=""android.permission.ACCESS_NETWORK_STATE"" >    </uses-permission>    <uses-permission android:name=""android.permission.CHANGE_WIFI_STATE"" >    </uses-permission>    <uses-permission android:name=""android.permission.READ_PHONE_STATE"" >    </uses-permission>    <uses-permission android:name=""android.permission.WRITE_EXTERNAL_STORAGE"" >    </uses-permission>    <uses-permission android:name=""android.permission.INTERNET"" />    <uses-permission android:name=""android.permission.MOUNT_UNMOUNT_FILESYSTEMS"" >    </uses-permission>    <uses-permission android:name=""android.permission.READ_LOGS"" >    </uses-permission>    <uses-permission android:name=""android.permission.VIBRATE"" />    <uses-permission android:name=""android.permission.WAKE_LOCK"" />    <uses-permission android:name=""android.permission.WRITE_SETTINGS"" />

java
public class MainActivity extends Activity {
private LocationClient mLocationClient;
private TextView LocationResult;
private Button startLocation;
private BDLocation location1;

@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    mLocationClient = new LocationClient(getApplicationContext());    mLocationClient.registerLocationListener(new MyLocationListener());     LocationResult = (TextView)findViewById(R.id.textView1);    startLocation = (Button)findViewById(R.id.button1);    //startLocation.setOnClickListener(new OnClickListener() {  }public void onClick(View v) {            // TODO Auto-generated method stub            InitLocation();            if(startLocation.getText().equals(""start"")){                mLocationClient.start();                //mLocationClient.requestLocation();                startLocation.setText(""stop"");            }else{                mLocationClient.stop();                startLocation.setText(""start"");            }        }@Overridepublic boolean onCreateOptionsMenu(Menu menu) {    // Inflate the menu; this adds items to the action bar if it is present.    getMenuInflater().inflate(R.menu.main menu);    return true;}@Overrideprotected void onStop() {    // TODO Auto-generated method stub    mLocationClient.stop();    super.onStop();}private void InitLocation(){    LocationClientOption option = new LocationClientOption();    //location1 = new LocationClient(getApplicationContext());    option.setLocationMode(LocationMode.Hight_Accuracy);//设置定位模式    option.setCoorType(""gcj02"");//返回的定位结果是百度经纬度,默认值gcj02    option.setScanSpan(5000);//设置发起定位请求的间隔时间为100ms    option.setIsNeedAddress(true);    option.setOpenGps(true);    mLocationClient.setLocOption(option);}/** * 实现实位回调监听 */public class MyLocationListener implements BDLocationListener {    @Override    public void onReceiveLocation(BDLocation location) {        //Receive Location         location1=location;        StringBuffer sb = new StringBuffer(256);        sb.append(""time : "");        sb.append(location.getTime());        sb.append(""error code : "");        sb.append(location.getLocType());        sb.append(""latitude : "");        sb.append(location.getLatitude());        sb.append(""lontitude : "");        sb.append(location.getLongitude());        sb.append(""radius : "");        sb.append(location.getRadius());        if (location.getLocType() == BDLocation.TypeGpsLocation){            sb.append(""speed : "");            sb.append(location.getSpeed());            sb.append(""satellite : "");            sb.append(location.getSatelliteNumber());            sb.append(""direction : "");            sb.append(""addr : "");            sb.append(location.getAddrStr());            sb.append(location.getDirection());        } else if (location.getLocType() == BDLocation.TypeNetWorkLocation){            sb.append(""addr : "");            sb.append(location.getAddrStr());            //运营商信息            sb.append(""operationers : "");            sb.append(location.getOperators());        }        int flag=location.getLocType();        String a=""error :  "";        a=a+flag;        sb.append(a);        Toast.makeText(MainActivity.thissb"" Toast.LENGTH_SHORT);        Log.i(""dwtedx"" sb.toString());    }}

}

布局 里面只有一个显示的TextView 定位的Button

解决方案

<meta-data    android:name=""com.baidu.lbsapi.API_KEY""    android:value=""66iOAPAecwuaafXjw2XgaAGf"" /> 这个 你可能要再申请一个key             你使用的多半是debug的key 

解决方案二:
参考如下blog:
http://blog.csdn.net/crazy1235/article/details/43898451

时间: 2024-12-21 05:24:01

android-Android百度地图API onReceiveLocation的相关文章

Android 调用百度地图API示例

Android 调用百度地图API 一.到 百度地图开发平台下载SDK http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download 1.点击自定义下载 2.下载自己想要的功能包我这里选了三个 3.获取密钥 获取密钥之前我们要新建一个应用 填写好相关的信息 二. 新建一个项目工程 1. 把下载好的百度sdk中的jar包拷贝到项目的libs目录下 2.在application中添加开发密钥 3.添加所需的权限 <uses-

android-Android百度地图API怎么获取邮编?

问题描述 Android百度地图API怎么获取邮编? 我用OnMapOnclickListener里面只有MapPoi,只有地点名称坐标,其他监听点击地图怎么获取点击地点的邮编? 解决方案 android 基于百度地图api获取经纬度android 百度地图apiandroid 用百度地图API获取经纬度和地理位置 解决方案二: 有专门的邮编数据库,查询了地址再查询邮编 解决方案三: 你可以查查百度地图API 解决方案四: http://blog.csdn.net/column/details/

eclipse-android应用百度地图api导入sdk出错 报错代码如下 求大神指点

问题描述 android应用百度地图api导入sdk出错 报错代码如下 求大神指点 Dex Loader] Unable to execute dex: Multiple dex files define Lcom/baidu/mapapi/BMapManager;baidumapapi] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/baidu/mapapi/B

Android中使用百度地图API:公交换乘方案搜索

这是我写的第3篇介绍调用百度地图API搜索服务的文章,所以对搜索前要做的其它工作不再介绍,再加上 代码中的注释也对相关的操作.方法做了尽可能详细的说明,所以直接看示例吧. 1)布局文件 res/layout/main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro

Android中使用百度地图API:根据经纬度查询地址信息

百度地图移动版API不仅包含构建地图的基本接口,还集成了众多搜索服务,包括:位置检索.周边检索. 范围检索.公交检索.驾乘检索.步行检索.地址信息查询等. 百度地图移动版API提供的搜索服务主要是 通过初始化MKSearch类,注册搜索结果的监听对象MKSearchListener来实现异步搜索服务.首先需要自定义一 个MySearchListener类,它实现MKSearchListener接口,然后通过实现接口中不同的回调方法,来获得对应的 搜索结果.MySearchListener类的定义

Android中使用百度地图API:城市POI搜索-获取所有结果

本文主要讲解如何通过百度地图API搜索得到一个城市里的所有POI.这里有必要对"所有"这个词进行强 调一下,以便引起重视,之所以这样说,是因为在搜索POI时,默认仅返回一页的搜索结果10条,那么如何才 能得到所有的搜索结果呢?其实baidu map api是提供了相关的方法,但我发现有相当多的网友都在问这个问 题,所以有必要讲解演示一下. 先讲一下什么称之为"城市POI搜索"?它与我们在上一篇文章([011] 百 度地图API之POI搜索-发现你身边的兴趣点,如超市

Android中使用百度地图API:MyLocationOverlay

本篇文章主要讲解Baidu Map API中MyLocationOverlay的使用.故名思义,MyLocation中文释义为"我的 位置",而Overlay则是"图层"或"覆盖物"的意思,MyLocationOverlay的作用正是用于在地图上标注自己 所处的位置.它跟使用ItemizedOverlay非常相似,只不过MyLocationOverlay标记的只有一个点. 在地图 上标记用户当前所处位置其实是一个GPS定位应用.首先通过GPS定位

在Android应用中使用百度地图api

本篇通过一个简单的示例一步步介绍如何在Android应用中使用百度地图api. 1)下载百度地图移动版 API(Android)开发包 要在Android应用中使用百度地图API,就需要在工程中引用百度地图API开发包,这个 开发包包含两个文件:baidumapapi.jar和libBMapApiEngine.so.下载地址: http://dev.baidu.com/wiki/static/imap/files/BaiduMapApi_Lib_Android_1.0.zip 2)申请API K

android百度地图api 的一些类我用不了。可是官方api中明明有给出。

问题描述 android百度地图api 的一些类我用不了.可是官方api中明明有给出. 还有关于overlaymanager的类 我都用不了.可是官网api明明给出了这个类的啊.我下载了最全的sdk. 希望有人帮我下 感激不尽.文档"> //官方api的部分截图 解决方案 Android 百度地图API 定位 导航Android 百度地图API 定位 导航 代码 解决方案二: 有这个jar包吗..... 解决方案三: 所用百度地图API为3.6版,而BMapManager在3之后就弃用了,