Android 百度地图开发 应用到自己的项目中
来源:互联网 发布:数据库通配符 编辑:程序博客网 时间:2024/04/30 11:45
研究了两天的百度地图,下面是我的博客,大家一起学习啊
第一步:申请百度地图的API key
申请地址http://developer.baidu.com/map/index.php?title=首页(前提要有自己的百度账号)
注意:安全码的问题,如下图所示,一步一步来,便可以得到自己想要的东西
安全码是Android签名证书的证书指纹 (SHA1)值 + “;” + 你的应用程序包名,所以当你配置好了API key 你不能随意更换应用程序的包名, 如果更换了包名我们需要重新配置API key,接下来我们来介绍怎么获取数字签名
我们知道我们开发的Android程序是需要给他签名的,如果没有签名是不允许被安装到手机或者模拟器的,那么你会有疑问,我平常开发的应用确实没签名,怎么能在模拟器或者手机上直接运行呢,其实ADT会自动的使用debug密钥为应用程序签名,当然你也可以自己创建一个属于你自己的密钥,直接用Eclipse可视化创建就行了,很方便的,这里我就不介绍了
- 这里我们用debug.keystore来生成Android签名证书的证书指纹 (SHA1)值,可以在eclipse中直接查看:winows -> preferance -> android -> build。 如下图示:
红色框框里面的东西就是我们需要的Android签名证书的证书指纹 (SHA1)值,然后我们复制出来,输入到API key的安全码输入框里面,再用分号隔开加上你的应用程序包名,如 02:5C:80:25:B2:8F:6F:60:54:B9:F4:B2:EF:94:FF:EE:CC:3C:5A:29;com.example.baidumapdemo 这样子我们就配置好了API key。
上面是eclipse的查找法,因为我用的是idea,所以有用idea的同学可以参考:
http://www.eoeandroid.com/thread-567929-1-1.html
以上讲的都是两种方法,根据自己的情况可以定。
第二步:下载百度地图库
要在Android应用中使用百度地图API,就需要在工程中引用百度地图API开发包,下载地址http://developer.baidu.com/map/sdkandev-download.htm,下载Android SDKv2.1.3 lib库就行了
第三步:应用到自己的项目中去
1.布局文件
activity_main.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <com.ncsyeyy.YeyyBaiDuMap.MyLocationMapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:background="@drawable/edit_bg_all" > <EditText android:id="@+id/txtAddr" android:layout_width="fill_parent" android:layout_height="40dp" android:layout_centerVertical="true" android:layout_marginRight="2dp" android:layout_toLeftOf="@+id/btOk" android:background="@drawable/edit_bg_all" android:completionThreshold="2" android:drawableLeft="@drawable/qz_icon_seabar_search" android:hint="请输入搜索关键字" /> <TextView android:id="@+id/btOk" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginRight="2dp" android:layout_toLeftOf="@+id/s2" android:text="搜索" android:textSize="18sp" /> <ImageView android:id="@+id/s2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginRight="2dp" android:layout_toLeftOf="@+id/btget" android:src="@drawable/slide_center" /> <TextView android:id="@+id/btget" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:text="定位" android:textSize="18sp" /> </RelativeLayout> </FrameLayout></RelativeLayout>custom_text_view.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/popleft" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/popup_side" android:gravity="center" android:textStyle="bold" android:textColor="#3814ed" android:text="更新位置" android:textSize="12sp" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:id="@+id/popinfo" > <TextView android:id="@+id/textcache" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/popup_middle" android:gravity="center" android:textStyle="bold" android:textColor="@android:color/black" android:textSize="12sp" /> <TextView android:id="@+id/popdown" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/popup_down" android:textColor="@android:color/black" android:textSize="12sp" /> </LinearLayout> <TextView android:id="@+id/popright" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/popup_side" android:textColor="#3814ed" android:gravity="center" android:textStyle="bold" android:text="更新marker" android:textSize="12sp" /></LinearLayout>
2.代码的实现部分
具体的代码部分可以下载源码看
3.AndroidManifest.xml权限的添加
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ncsyeyy.YeyyBaiDuMap" android:versionCode="1" android:versionName="1.0"> <!--<uses-sdk android:minSdkVersion="19"/>--> <!-- 添加屏幕支持 --> <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 使用网络功能所需权限 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" > </uses-permission> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" > </uses-permission> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" > </uses-permission> <!-- 使用定位功能所需权限 --> <!-- SDK离线地图和cache功能需要读写外部存储器 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" > </uses-permission> <uses-permission android:name="android.permission.ACCESS_GPS" /> <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.MOUNT_UNMOUNT_FILESYSTEMS" > </uses-permission> <uses-permission android:name="android.permission.READ_LOGS" > </uses-permission> <uses-permission android:name="android.permission.WRITE_SETTINGS" /><pre style="background-color: rgb(255, 255, 255); font-family: 'Source Code Pro'; font-size: 18pt;"><span style="color:#ff0000;">// Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to com.ncsyeyy.YeyyBaiDuMap.MyApplication// at com.ncsyeyy.YeyyBaiDuMap.MainActivity.onCreate(MainActivity.java:67)<span style="font-family: 'Courier New';">产生错误的原因</span></span><application android:name=".MyApplication"//注意:一定要写上不然会报错 android:label="@string/app_name" android:icon="@drawable/ic_launcher"> <activity android:name=".MainActivity" android:allowBackup="true" android:theme="@style/AppTheme" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> <!-- 百度地图服务START --> <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" > </service> <!-- 百度地图服务end --> </application></manifest>运行结果:
源码地址:
http://download.csdn.net/detail/csdnyuandaimaxuexi/9048135
- Android 百度地图开发 应用到自己的项目中
- 从自己的应用跳转到百度、高德地图
- android studio使用百度SDK开发百度地图应用中遇到的问题汇总
- Android应用中使用百度地图API定位自己的位置(二)
- 如何在自己的应用中使用百度离线地图
- android开发中百度地图的使用
- 兔子--android中百度地图的开发
- Android百度地图(一)如何集成到项目中
- Android中百度地图开发
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)---申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
- "abc" full arrange - II
- 国际减灾战略委员会
- 类之间的关系
- Python 动态生成变量名
- python celery(任务调度器)
- Android 百度地图开发 应用到自己的项目中
- OutMan——Objective-C中的ARC介绍和block的使用
- Rational software architect9 生成序列图 软件死机
- 压缩图片实例
- 辛星解读laravel源代码第一篇即Database的实现流程
- python中调用函数
- _itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
- hdu3790
- spring事务处理详解