(Android)百度地圖--只定位獲取數據不顯示地圖

作者:luyanhong
轉載請加說明、鏈接。

環境:Eclipse。
擴展包:baiduumapapi_v2_1_1.jar ; locSDK_3.1.jar ;  (放到libs/)
so文件:libapp_BaiduMapApplib_v2_1_1.so ; liblocSDK3.so ; libvi_voslib.so ; (放到libs/armeabi/,是否都有用處,未進行測試)

AndroidManifest.xml
把百度地圖要求的權限給上。我只刪除了一些。具體如下:
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />

    <permission android:name="android.permission.BAIDU_LOCATION_SERVICE" ></permission>

    <uses-permission android:name="android.permission.BAIDU_LOCATION_SERVICE" > </uses-permission>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" ></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" ></uses-permission>
    <uses-permission android:name="android.permission.INTERNET" > </uses-permission>
    <uses-permission android:name="android.permission.ACCES_MOCK_LOCATION" ></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ></uses-permission>
    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
    <uses-permission android:name="android.permission.WAKE_LOCK" ></uses-permission>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_GPS" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />

定義一個Application: MyApplication.java
private static MyApplication mInstance = null;
    public boolean m_bKeyRight = true;
    BMapManager mBMapManager = null;

    public static final String strKey = "3F4788E1F19CCF7BC6B4ACAA397BD7868F9A974A";
   
    @Override
    public void onCreate() {
        super.onCreate();
        mInstance = this;
        initEngineManager(this);
    }
   
    @Override
    //建議在您app的退出之前調用mapadpi的destroy()函數,避免重複初始化帶來的時間消耗
    public void onTerminate() {
        // TODO Auto-generated method stub
        if (mBMapManager != null) {
            mBMapManager.destroy();
            mBMapManager = null;
        }
        super.onTerminate();
    }
   
    public void initEngineManager(Context context) {
        if (mBMapManager == null) {
            mBMapManager = new BMapManager(context);
        }

        if (!mBMapManager.init(strKey,new MyGeneralListener())) {
            Toast.makeText(MyApplication.getInstance().getApplicationContext(),
                    "BMapManager  初始化錯誤!", Toast.LENGTH_LONG).show();
        }
    }
   
    public static MyApplication getInstance() {
        return mInstance;
   
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章