android地图开发及google地图密钥申请.docx
- 文档编号:9874020
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:34
- 大小:1.49MB
android地图开发及google地图密钥申请.docx
《android地图开发及google地图密钥申请.docx》由会员分享,可在线阅读,更多相关《android地图开发及google地图密钥申请.docx(34页珍藏版)》请在冰点文库上搜索。
android地图开发及google地图密钥申请
)首先你要确定你安装的JDK位置,Windows->Preferences->Java->InstalledJREs,你可以看到是Jre的location,再在doscmd模式下查看你当前系统的path是否已经包含了。
如果没有包含添加到当前环境参数中。
因为我们要用到的keytool命令在这个目录下呀。
2)接下来就要找到你不前AVD的debug.keystore的位置,windows->perferences->android->build,
defaultdebugkeystore文本框中,列出C:
\DocumentsandSettings\XXXXuser\.android\debug.keystore,这就是默认的debug.keystore,你可以先把这个文件改一下名。
我们需要创建一个新的debug.keystore
3)紧接着我们来创建一个新的debug.keystore,在cmd下,进入C:
\DocumentsandSettings\XXXXuser\.android目录
执行命令如下:
keytool-genkey-v-keystoredebug.keystore-aliasandroiddebugkey-keyalgRSA-validity10000
输入密码,用户等信息确认后生成一个debug.keystore
4)好了,接下来我们就需要获取MD5,去google申请一个apikey,很简单
在当前目录下执行:
keytool-list-aliasandroiddebugkey-keystoredebug.keystore
根据提示输入你在第三步所设的密码,ok,就会得到下面信息,
Certificatefingerprint(MD5):
FC:
ED:
DE:
BS:
16:
1A:
E8:
05:
F0:
44:
AD:
4E:
45:
42:
4B:
D4
这就是我们申请apikey时需要的FC:
ED:
DE:
BS:
16:
1A:
E8:
05:
F0:
44:
AD:
4E:
45:
42:
4B:
D4
通过浏览器访问
在Mycertificate'sMD5fingerprint文本框中输入您刚刚获取到的MD5码
点击GenerateAPIKey,
ThankyouforsigningupforanAndroidMapsAPIkey!
Yourkeyis:
0yRkOg8325bNSbeuYXZMsj-CMG2rXXXqFBoa11A
这就是apikey了,记得保存下呀
5)新建一个android项目
修改main.xml
xmlversion="1.0"encoding="utf-8"?
>
android=" android: orientation="vertical" android: layout_width="fill_parent" android: layout_height="fill_parent" > android: id="@+id/my_map" android: enabled="true" android: apiKey="0yRkOg8325bNSbeuYXZMsj-CMG2rXXXqFBoa11A" android: layout_width="fill_parent" android: layout_height="wrap_content" /> 在layout中定义mapview时需要加入apikey,如: android: apiKey="0yRkOg8325bNSbeuYXZMsj-CMG2rXXXqFBoa11A" 6)修改androidmanifest.xml xmlversion="1.0"encoding="utf-8"? > android=" package="com.testmap" android: versionCode="1" android: versionName="1.0"> icon="@drawable/icon"android: label="@string/app_name"> name="com.google.android.maps"/> name=".testmap" android: label="@string/app_name"> name="android.intent.action.MAIN"/> name="android.intent.category.LAUNCHER"/> minSdkVersion="5"/> name="android.permission.INTERNET"> name="android.permission.ACCESS_COARSE_LOCATION"> name="android.permission.ACCESS_FINE_LOCATION"> 我们需要加入用户库引用 name="com.google.android.maps"/> 当然了还要加入权限的定义 name="android.permission.INTERNET"> 这两步必不可少 7)最后就是主class了 import com.google.android.maps.GeoPoint; import com.google.android.maps.MapActivity; import com.google.android.maps.MapController; import com.google.android.maps.MapView; import android.os.Bundle; public class testmap extends MapActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //get map view MapView mv = (MapView) findViewById(R.id.my_map); MapController controller = (MapController)mv.getController(); GeoPoint p = new GeoPoint((int) (24.7 * 1000000),(int)(-238.8 * 1000000)); controller.animateTo(p); controller.setZoom(9); } @Override protected boolean isRouteDisplayed() { // TODO Auto-generated method stub return false; } } UsingEclipse,createanewAndroidprojectandnameGoogleMapsasshowninFigure1. Figure1CreatinganewAndroidprojectusingEclipse ObtainingaMapsAPIkey BeginningwiththeAndroidSDKreleasev1.0,youneedtoapplyforafreeGoogleMapsAPIkeybeforeyoucanintegrateGoogleMapsintoyourAndroidapplication.Toapplyforakey,youneedtofollowtheseriesofstepsoutlinedbelow.YoucanalsorefertoGoogle'sdetaileddocumentationontheprocessat First,ifyouaretestingtheapplicationontheAndroidemulator,locatetheSDKdebugcertificatelocatedinthedefaultfolderof"C: \DocumentsandSettings\ Forsimplicity,copythisfile(debug.keystore)toafolderinC: \(forexample,createafoldercalled"C: \Android"). Usingthedebugkeystore,youneedtoextractitsMD5fingerprintusingtheKeytool.exeapplicationincludedwithyourJDKinstallation.ThisfingerprintisneededtoapplyforthefreeGoogleMapskey.YoucanusuallyfindtheKeytool.exefromthe"C: \ProgramFiles\Java\ Issuethefollowingcommand(seealsoFigure2)toextracttheMD5fingerprint. keytool.exe-list-aliasandroiddebugkey-keystore"C: \android\debug.keystore"-storepassandroid-keypassandroid CopytheMD5certificatefingerprintandnavigateyourwebbrowserto: FollowtheinstructionsonthepagetocompletetheapplicationandobtaintheGoogleMapskey. Figure2ObtainingtheMD5fingerprintofthedebugkeystore TousetheGoogleMapsinyourAndroidapplication,youneedtomodifyyourAndroidManifest.xmlfilebyaddingthe xmlversion="1.0"encoding="utf-8"? > android=" package="net.learn2develop.GoogleMaps" android: versionCode="1" android: versionName="1.0.0"> icon="@drawable/icon"android: label="@string/app_name"> name="com.google.android.maps"/> name=".MapsActivity" android: label="@string/app_name"> name="android.intent.action.MAIN"/> name="android.intent.category.LAUNCHER"/> name="android.permission.INTERNET"/> 复制代码 DisplayingtheMap TodisplaytheGoogleMapsinyourAndroidapplication,modifythemain.xmlfilelocatedintheres/layoutfolder.Youshallusethe xmlversion="1.0"encoding="utf-8"? > android=" android: layout_width="fill_parent" android: layout_height="fill_parent"> android: id="@+id/mapView" android: layout_width="fill_parent" android: layout_height="fill_parent" android: enabled="true" android: clickable="true" android: apiKey="0l4sCTTyRmXTNo7k8DREHvEaLar2UmHGwnhZVHQ" /> 复制代码 NoticefromabovethatIhaveusedtheGoogleMapskeythatIobtainedearlierandputitintotheapiKeyattribute. IntheMapsActivity.javafile,modifytheclasstoextendfromtheMapActivityclass,insteadofthenormalActivityclass: packagenet.learn2develop.GoogleMaps; importcom.google.android.maps.MapActivity; importcom.google.android.maps.MapView; importandroid.os.Bundle; publicclassMapsActivityextendsMapActivity { /**Calledwhentheactivityisfirstcreated.*/ @Override publicvoidonCreate(BundlesavedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } @Override protectedbooleanisRouteDisplayed(){ returnfalse; } } 复制代码 ObservethatifyourclassextendstheMapActivityclass,youneedtooverridetheisRouteDisplayed()method.Youcansimplydosobysettingthemethodtoreturnfalse. That'sit! That'sallyouneedtodotodisplaytheGoogleMapsinyourapplication.PressF11inEclipsetodeploytheapplicationontoanAndroidemulator.Figure3showstheGooglemapinallitsglory. Figure3GoogleMapsinyourapplication Atthisjuncture,takenoteofafewtroubleshootingdetails.Ifyourprogramdoesnotrun(i.e.itcrashes),thenitislikelyyouforgottoputthefollowingstatementinyourAndroidManifest.xmlfile: name="com.google.android.maps"/> Ifyourapplicationmanagestoloadbutyoucannotseethemap(allyouseeisagrid),thenitisverylikelyyoudonothaveavalidMapkey,orthatyoudidnotspecifytheINTERNETpermission: name="android.permission.INTERNET"/> DisplayingtheZoomView TheprevioussectionshowedhowyoucandisplaytheGoogleMapsinyourAndroiddevice.Youcandragthemaptoanydesiredlocationanditwillbeupdatedonthefly.However,observethatthereisnowaytozoominoroutfromaparticularlocation.Thus,inthissection,youwilllearnhowyoucanletuserszoomintooroutofthemap. First,adda xmlversion="1.0"encoding="utf-8"? > android=" android: layout_width="fill_parent" android: layout_height="fill_parent"> android: id="@+id/mapView" android: layout_width="fill_parent"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 地图 开发 google 密钥 申请