標籤:eclips pac public cli xtend android dma this bundle
由於個人是Android小白,在這個配置上面被折磨了很久,因此寫下這篇文章
工具:eclipse + unity5.6.1
首先去百度地圖開發人員平台下載你需要的資源,我只需要顯示地圖和定位,這個時候你一定要注意了,一定要把你所需要的功能全部選擇了再下載,要不然BaiduLBS_Android.jar包裡面只有你選擇的那個單個需求的類,下載下來之後將BaiduLBS_Android.jar類複製個副本,將尾碼改成.rar格式,解壓出來(後面會用到裡面的assets檔案夾)
eclipse中配置:
首先將下載好的包匯入eclipse
項目中的類:
考慮到後面要用unity來調用Android的方法,因此要建立一個UnityActivity繼承UnityPlayerActivity,unity調用這個UnityActivity中的StartMapActivity()方法啟動BaiduLocation activity
package com.map.unity;import com.unity3d.player.UnityPlayerActivity;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class UnityActivity extends UnityPlayerActivity{ Context mContext = null; // Button requestLocButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = this; } public void StartMapActivity(String name) { Intent intent = new Intent(mContext,BaiduLocation.class); //intent.putExtra("name", name); this.startActivity(intent); }}
BaiduLocation是參考百度地圖的樣本根據我自己的需求做的,建議大家也自己去看一下百度官方給的案例
又有一個坑來了,參考百度地圖樣本寫完BaiduLocation.java後我運行百度地圖不出來,查了下才知道要配置上面的第二個類DemoApplication.java並在AndroidManifest.xml檔案配置(這個時候我沒有繼承UnityPlayerActivity而是繼承Activity,寫了個按鈕啟動百度地圖)
AndroidManifest.xml配置我就不多說了,基本上網上都有,文章下邊我會給出項目源碼,包括eclipse項目+unity項目,需要的話下載看看吧
至此Android端的坑踩完了
unity:
結構在這裡
第一個坑是libs中的,可以仔細觀察下與eclipse中的不同,unity中是armeabi-v7a,eclipse是arm64-v8a
第二個坑是assets,上面我有說過要解壓BaiduLBS_Android.jar,就是用在這裡,要拷貝進去,不然顯示不了地圖的。
unity調用Android百度地圖