unity怎么使用unity ios 高德地图图

最近LBS很火,研究了一下Unity中接入高德地图,普通接入...
基于FFT大规模海面的实现方法(下篇)一、傅里叶变换可见系数...
Unity早期有对.c4d文件进行支持,但缩放问题,不支持顶...
简介为了构建动态海浪,利用Phillips频谱计算海浪频域的...
首先,是要新建一个UIRoot(使用的NGUI开发),因为一...
第一次发帖,有不足之处,还望指教最近项目要求,有本地链接(文...
Lightmap在PC上与android和ios的区别以及解...
我的第一个3D游戏,新手设计游戏各位谅解下,小岛历险记今天开...
雷电这种游戏算是小游戏,因此没有大的构架去设计大概的思路是这...
黄金矿工每个人耳熟能详,我在FLASH中玩过这个游戏,我想把...
Unity技术讨论
Unity技术分享
请各位大神不吝赐教。
由icon组成一个椭圆形状,按住icon滑动,轨迹就是椭圆。这个怎么才能做到...
Android自动化测试方法,其中包括CTS、Monkey、Monkeyrunner、bench...
当两个刚体用固定关节连接时,如果刚体质量大于1000就会发生相对位置位移的现象,类似于两个秤砣用竹竿...
Unity中密码框的输入可以直接输入中文,有没有小伙伴知道这种问题怎么...
为什么我的摄像机中没有设置skybox。打包出来会有我用的5.4.1...
Dictionary _clips = new Dictionary();
在unity使用Application.OpenUrl(path);方法即可调用
注意,需要在ba...
我是在属性面板拖上去的。为啥会说没有啊
圣典原创视频
Unity插件论坛
界面的UIRoot也是预制体代码创建出来2455人阅读
Android交互(1)
因为要在Android应用中添加模型(含动作),所以要把Android工程的一些文件导出成插件放到unity中,再在unity中打包。
具体地可以看:http://blog.csdn.net/lyh916/article/details/
在做高德地图时,发现由MyEclipse打包出来的apk,可以正常地运行地图,但是同样的工程,经过unity打包后,却总是各种不成功。后来经过一番努力,总算成功了,在这里总结一下。主要有三个问题:
1.要把Android工程下的libs文件夹下的东西(例如 .so .jar)全部复制黏贴到unity中的Assets\Plugins\Android\bin文件夹下,同时还要把Android工程的类文件打包成jar放到bin下
2.注意高德地图中的MapView类。如果MapView是来自地图sdk的2.6.0版本前的,就会出错,所以这里最好选择2.6.0版本及之后的。在2.6.0版本中,MapView是com.amap.api.maps2d包中的
3.由MyEclipse打包出来的apk,其SHA1值跟由unity打包出来的apk的SHA1值是不同的,即使使用的都是同一个key。
这里提供一种方法(来自http://blog.csdn.net/harvic880925/article/details/中的一个评论):
为了避免注册时弄错签名,建议直接用打包出来的apk查看签名,具体如下:&
1) 将apk修改后缀为 .rar文件后解压;&
2) 进入解压后的META-INF目录,该目录下会存在文件CERT.RSA&
3) 在该目录下打开cmd,输入命令 :keytool -printcert -file CERT.RSA&
这里将会显示出MD5和SHA1签名。
最后给出本人的高德地图fragment,主要有定位功能:
fragment_map.xml:
&?xml version=&1.0& encoding=&utf-8&?&
&FrameLayout xmlns:android=&/apk/res/android&
android:layout_width=&match_parent&
android:layout_height=&match_parent&
android:orientation=&vertical& &
&com.amap.api.maps2d.MapView
android:id=&@+id/map&
android:layout_width=&match_parent&
android:layout_height=&match_parent& &
&/com.amap.api.maps2d.MapView&
&RadioGroup
android:id=&@+id/gps_radio_group&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:layout_gravity=&top|left&
android:layout_marginLeft=&10dp&
android:layout_marginTop=&10dp&
android:background=&@color/grey&
android:orientation=&horizontal& &
&RadioButton
android:id=&@+id/mapNormal&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:checked=&true&
android:text=&标准地图&
android:textColor=&@android:color/black& /&
&RadioButton
android:id=&@+id/mapSatellite&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:text=&卫星地图&
android:textColor=&@android:color/black& /&
&/RadioGroup&
&/FrameLayout&
package com.example.
import com.amap.api.location.AMapL
import com.amap.api.location.AMapLocationL
import com.amap.api.location.LocationManagerP
import com.amap.api.location.LocationProviderP
import com.amap.api.maps2d.AM
import com.amap.api.maps2d.CameraU
import com.amap.api.maps2d.CameraUpdateF
import com.amap.api.maps2d.MapV
import com.amap.api.maps2d.LocationS
import android.app.F
import android.location.L
import android.os.B
import android.util.L
import android.view.LayoutI
import android.view.V
import android.view.ViewG
import android.widget.RadioG
import android.widget.RadioGroup.OnCheckedChangeL
public class MyMapFragment extends Fragment implements LocationSource,AMapLocationListener,
OnCheckedChangeListener {
private AMap aM
private MapView mapV
private OnLocationChangedListener mL
private LocationManagerProxy mAMapLocationM
private RadioGroup mGPSModeG
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_map, container, false);
mapView = (MapView) view.findViewById(R.id.map);
mapView.onCreate(savedInstanceState);// 此方法必须重写
mGPSModeGroup = (RadioGroup) view.findViewById(R.id.gps_radio_group);
mGPSModeGroup.setOnCheckedChangeListener(this);
private void init() {
if (aMap == null) {
aMap = mapView.getMap();
setUpMap();
* 设置一些amap的属性
private void setUpMap() {
aMap.setLocationSource(this);// 设置定位监听
aMap.getUiSettings().setMyLocationButtonEnabled(true);// 设置默认定位按钮是否显示
aMap.setMyLocationEnabled(true);// 设置为true表示显示定位层并可触发定位,false表示隐藏定位层并不可触发定位,默认是false
aMap.setMapType(AMap.MAP_TYPE_NORMAL);
//地图缩放级别为4-20级
//如果想让地图放大到最大,18是一个合适值
CameraUpdate cu = CameraUpdateFactory.zoomTo(18);
aMap.animateCamera(cu, null);
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.mapNormal:
aMap.setMapType(AMap.MAP_TYPE_NORMAL);
case R.id.mapSatellite:
aMap.setMapType(AMap.MAP_TYPE_SATELLITE);
* 定位成功后回调函数
public void onLocationChanged(AMapLocation arg0) {
if (mListener != null && arg0 != null) {
if (arg0 != null
&& arg0.getAMapException().getErrorCode() == 0) {
mListener.onLocationChanged(arg0);// 显示系统小蓝点
Log.e(&AmapErr&,&Location ERR:& + arg0.getAMapException().getErrorCode());
* 激活定位
public void activate(OnLocationChangedListener arg0) {
mListener = arg0;
if (mAMapLocationManager == null) {
mAMapLocationManager = LocationManagerProxy.getInstance(getActivity());
// 此方法为每隔固定时间会发起一次定位请求,为了减少电量消耗或网络流量消耗,
// 注意设置合适的定位时间的间隔(最小间隔支持为2000ms),并且在合适时间调用removeUpdates()方法来取消定位请求
// 在定位结束后,在合适的生命周期调用destroy()方法
// 其中如果间隔时间为-1,则定位只定一次
// 在单次定位情况下,定位无论成功与否,都无需调用removeUpdates()方法移除请求,定位sdk内部会移除
mAMapLocationManager.requestLocationData(
LocationProviderProxy.AMapNetwork, 60 * 1000, 10, this);
* 停止定位
public void deactivate() {
mListener =
if (mAMapLocationManager != null) {
mAMapLocationManager.removeUpdates(this);
mAMapLocationManager.destroy();
mAMapLocationManager =
public void onDestroy() {
super.onDestroy();
mapView.onDestroy();
public void onPause() {
super.onPause();
mapView.onPause();
public void onResume() {
super.onResume();
mapView.onResume();
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mapView.onSaveInstanceState(outState);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:187275次
积分:3290
积分:3290
排名:第7905名
原创:132篇
转载:97篇
评论:92条
(8)(16)(1)(6)(10)(20)(1)(1)(3)(19)(22)(5)(1)(5)(13)(32)(32)(26)1423人阅读
unity3d(39)
移动平台开发(43)
接上一篇,有时候不是想偷懒,实在是不会用android studio再次打包啊。
高德地图定位android sdk中,设置定位模式,java代码如下:
//设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式
mLocationOption.setLocationMode(AMapLocationMode.Hight_Accuracy);
在unity中,用
ndroidJavaObject redValue =
new AndroidJavaClass(&com.amap.api.location.AMapLocationClientOption.AMapLocationMode&)
.GetStatic&AndroidJavaObject&(&Hight_Accuracy&); 的方法获得,反编译了以后,发现,AMapLocationMode是AMapLocationClientOption类下的枚举,没见到源码,不知道到底是哪的原因。
后来发现,用
txtInfo.text = txtInfo.text + &\r\n&;
AndroidJavaObject hightAccuracy = new AndroidJavaClass(&com.amap.api.location.AMapLocationClientOption$AMapLocationMode&).GetStatic&AndroidJavaObject&(&Hight_Accuracy&);
txtInfo.text = txtInfo.text + &hightAccuracy...&+hightAccuracy.Call&string&(&name&);
的方法可以获取AMapLocationMode.Hight_Accuracy的枚举,但是在设置定位模式方法中使用时
txtInfo.text = txtInfo.text + &\r\n&;
mLocationOption.Call (&setLocationMode&, hightAccuracy);
txtInfo.text = txtInfo.text + &setLocationMode...&;
始终报错,不知道是unity的问题还是sdk的问题,还是我的问题。
我最后解决的办法是,重新写个辅助的jar把这个绕过去
package com.nsh.
import com.amap.api.location.AMapLocationClientO
import com.amap.api.location.AMapLocationClientOption.AMapLocationM
public class AMapLocationModeHelper {
public void setHA(AMapLocationClientOption clientOption){
clientOption.setLocationMode(AMapLocationMode.Hight_Accuracy);
public void setBS(AMapLocationClientOption clientOption){
clientOption.setLocationMode(AMapLocationMode.Battery_Saving);
public void setDS(AMapLocationClientOption clientOption){
clientOption.setLocationMode(AMapLocationMode.Device_Sensors);
AndroidJavaObject helper =new AndroidJavaObject(&com.nsh.amaphelp.AMapLocationModeHelper&);
txtInfo.text = txtInfo.text + &helper get...&;
txtInfo.text = txtInfo.text + &\r\n&;
helper.Call(&setHA&,mLocationOption);
txtInfo.text = txtInfo.text + &mode set...&;
终于是过去了,总感觉不爽,不知道到底问题在哪。
后面还好多事情呢,先这样吧。
如果哪位大侠能告诉我,问题在哪或者怎么做更好,360度跪求一定告诉我,在此谢过先。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:390160次
积分:4821
积分:4821
排名:第4500名
原创:118篇
评论:125条
(3)(2)(3)(4)(1)(3)(7)(11)(7)(3)(2)(1)(3)(2)(1)(1)(1)(1)(2)(4)(3)(2)(4)(2)(3)(3)(3)(3)(1)(7)(13)(2)(6)(8)有么有人在unity里嵌入过百度地图或者谷歌 和 高德地图的_unity3d吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:59,504贴子:
有么有人在unity里嵌入过百度地图或者谷歌 和 高德地图的收藏
指点下 怎么实现嵌入地图
票牛教你如何买到热门、便宜、真实的演出门票!
composer 可以生成bing 地图,包括了贴图和高度图。
楼主这个问题解决了吗?跪求?
楼主这个问题解决了吗?我也遇到了相似问题,如果解决了可以告诉一下思路吗?谢谢!
楼主,这个问题解决了吗?跪求
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
_____________________________________________________________________________________________________________
问答求助版块规则:
  1、问题尽量描述清楚
& && &2、代码要放在代码块里
& && &3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
& && &4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
& && &5、问题得到解决,请选择最佳答案。
& && &6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 1486|回复: 5
这种动态贴图的天空盒是怎么实现的,请进看细节说明
4454/500排名<font color="#FF昨日变化2主题帖子积分
四处流浪, 积分 454, 距离下一级还需 46 积分
四处流浪, 积分 454, 距离下一级还需 46 积分
在线时间103 小时
本帖最后由 someone 于
10:13 编辑
这是材质的原始贴图
skybox_ybr_blur_tex.png (477.47 KB, 下载次数: 6)
09:59 上传
tu3.png (1.2 MB, 下载次数: 0)
10:05 上传
这是渲染出的天空盒,其中路面和地面的草地是重复使用贴图的。
tu.png (619.28 KB, 下载次数: 0)
10:00 上传
tu2.png (714.37 KB, 下载次数: 1)
10:03 上传
这是使用的shader,看上去不是通过shader实现的!
// - Unlit
// - Standard LightMap with Fade out.
// - Pan Opaque
Shader &TempleRun2/Environment/Lightmap - Pan Opaque& {
Properties {
& && &&&_MainTex (&Base layer (RGB)&, ) = &white& {}
& && &&&_DetailTex (&2nd layer (RGB)&, 2D) = &white& {}
& && &&&_AMultiplier (&Layer Multiplier&, Float) = 0.5
& && &&&_Color(&Color&, Color) = (1,1,1,1)
& && &&&_ScrollX (&Base layer Scroll speed X&, Float) = 1.0
& && &&&_ScrollY (&Base layer Scroll speed Y&, Float) = 0.0
SubShader {
& && &&&Tags { &Queue&=&Geometry-55& &RenderType&=&Opaque& }
& && &&&Lighting Off Fog { Mode Off }
& && &&&ZWrite On
& && &&&Blend Off
& && &&&//Blend SrcAlpha OneMinusSrcAlpha
& && &&&LOD 100
& && && && && &
& && &&&CGINCLUDE
& && &&&//#pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON
& && &&&#include &CG.cginc&
& && &&&sampler2D _MainT
& && &&&sampler2D _DetailT
& && &&&float _AM
& && &&&float _FadeOutDistN
& && &&&float _FadeOutDistF
& && &&&float _ScrollX;
& && &&&float _ScrollY;
& && &&&float4 _C
& && &&&float4 _MainTex_ST;
& && &&&struct v2f {
& && && && && & float4 pos : SV_POSITION;
& && && && && & float2 uv : TEXCOORD0;
& && && && && & float2 uv2 : TEXCOORD1;
& && && && && & fixed4 color : TEXCOORD2;
& && &&&};
& && &&&v2f vertA (appdata_full v)
& && && && && & v2
& && && && && & o.pos = mul(_MATRIX_MVP, v.vertex);
& && && && && & o.uv = TRANSFORM_TEX(v.texcoord.xy, _MainTex) + frac(float2(_ScrollX, _ScrollY) * _Time);
& && && && && & o.uv2 = v.texcoord1.
& && && && && &
& && && && && & o.color = _Color * _AM
& && && && && &
& && &&&ENDCG
& && &&&Pass {
& && && && && & CGPROGRAM
& && && && && & #pragma vertex vertA
& && && && && & #pragma fragment frag
& && && && && & #pragma fragmentoption ARB_precision_hint_fastest& && && && && &
& && && && && & fixed4 frag (v2f i) : COLOR
& && && && && & {
& && && && && && && && &fixed4
& && && && && && && && &fixed4 tex = tex2D (_MainTex, i.uv);
& && && && && && && && &fixed4 tex2 = tex2D (_DetailTex, i.uv2);
& && && && && && && && &
& && && && && && && && &o = (tex * tex2) * i.
& && && && && && && && &
& && && && && & }
& && && && && & ENDCG
& && &&&}& && &&&
请问,这种天空盒是怎么做出来的? 谢谢各位
每日推荐:
15排名<font color="#FF昨日变化10主题帖子积分
在线时间1089 小时
每日推荐:
4454/500排名<font color="#FF昨日变化2主题帖子积分
四处流浪, 积分 454, 距离下一级还需 46 积分
四处流浪, 积分 454, 距离下一级还需 46 积分
在线时间103 小时
/forum/read.php?tid=4069
亲,我说的是动态贴图的路面,请注意看我发的路面的细节,一个圆形的路面和直线的路面只使用一张贴图
[]: 一个袋子砸在了 someone 头上,someone 赚了 1
每日推荐:
2131/150排名<font color="#FF昨日变化4主题帖子积分
初来乍到, 积分 131, 距离下一级还需 19 积分
初来乍到, 积分 131, 距离下一级还需 19 积分
在线时间39 小时
你好,请问这场景在哪可以下载啊,挺漂亮的。
[]: 一个袋子砸在了 mahaibo 头上,mahaibo 赚了 1
每日推荐:
3199/300排名<font color="#FF昨日变化8主题帖子积分
偶尔光临, 积分 199, 距离下一级还需 101 积分
偶尔光临, 积分 199, 距离下一级还需 101 积分
在线时间94 小时
好像要但是没有蛮牛币呀...
每日推荐:
3199/300排名<font color="#FF昨日变化8主题帖子积分
偶尔光临, 积分 199, 距离下一级还需 101 积分
偶尔光临, 积分 199, 距离下一级还需 101 积分
在线时间94 小时
好像要但是没有蛮牛币呀...
每日推荐:
社区QQ达人
使用QQ帐号登录论坛的用户
游戏蛮牛给予质量较高、影响力较大的unity相关技术开发者的荣誉称号
经过游戏蛮牛认证的蛮牛小翻译
连续签到30天
在“新人报到 ”版块发过自己的照片
认证开发者
经过游戏蛮牛认证的独立开发者}

我要回帖

更多关于 unity 高德地图插件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信