Eclipse百度地图开发只出现网格的问题解决方法归纳

来源:互联网 发布:大学生网络借贷论文 编辑:程序博客网 时间:2024/05/01 05:52

本人在开发过程中遇到这个问题,确实很头痛,网上很多教程说是百度申请的key有问题,重新创建一下应用就可以了,这个确实有这个可能,但是也不一定。网上有很多怎么加载百度地图SDK的教程,这里不做过多的阐述,主要是看看开发过程中遇到的 问题!

    首先看看怎么申请百度key

-----

在百度搜索百度地图开发者中心






---------------------------------------------------------------------------------------------------------------






-------------------------------------------------------------------------------------------------------------------








-------------------------------------------------------------------------------------------------------------------







-------------------------------------------------------------------------------------------------------------------







-------------------------------------------------------------------------------------------------------------------







-------------------------------------------------------------------------------------------------------------------


但是归根到底,程序确认没错的话应该就是AndroidManifest.xml文件里的代码错误了,这里对重新申请百度地图的KEY就不做过多讲解;网上很多教程,课自行百度,这里主要说一下,AndroidManifest.xml里的权限一定要给足,哪怕多给,有些虽然用不上,给了也没坏处,免得程序崩溃就不知所措,我的问题就是权限这里


这里忘记给这个权限,这个权限主要就是给手机一个网络权限,能够获取网络信息,然后显示地图。可能你的是别的权限问题!!!


下面运行结果~



最后建议最好用真机测试,避免出现别的问题!




最后还是贴一下源码:

MainActivity.java文件

package com.example.baidumaptest;
import java.util.List;
import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.BaiduMap;
import com.baidu.mapapi.map.MapStatusUpdate;
import com.baidu.mapapi.map.MapStatusUpdateFactory;
import com.baidu.mapapi.map.MapView;
import com.example.baidumaptest.R.id;
import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;


public class MainActivity extends Activity {
private MapView mapView;
private BaiduMap baiduMap;
private LocationManager locationManager;
private String provider;
private boolean isFirstLocate=true;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_main);
mapView=(MapView)findViewById(R.id.map_view);

}

@Override
protected void onDestroy(){
super.onDestroy();
mapView.onDestroy();

}

@Override
protected void onPause(){
super.onPause();
mapView.onPause();

}


@Override
protected void onResume(){
super.onResume();
mapView.onResume();

}

}



AndroidManifest.xml文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.baidumaptest"
    android:versionCode="1"
    android:versionName="1.0" >
    
    
    <!--百度地图所需权限-->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS"></uses-permission>
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"></uses-permission>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS"> </uses-permission>
    <uses-permission android:name="android.permission.ACCESS_WIFI_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.BROADCAST_STICKY"></uses-permission>
    <uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
    
    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="19" />


    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="这里写你自己申请到的key" />
            
     
        <activity
            android:name=".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>


</manifest>

最后布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
   


    <com.baidu.mapapi.map.MapView
        android:id="@+id/map_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true" />


</LinearLayout>



如果有想要Demo的可以到这里下载


http://pan.baidu.com/s/1pLgytbd

提取码:i5n1


网上有很多关于这个的博客,如有雷同,请与本人联系,见谅

1 0