最近在学Android,想做个google-map-api的小应用,哪知道费死劲了……
首先是关于52b54c00c74670da48c1b38ba99fb2c9的引用位置,书中没有提及,结果程序一运行就出现has stopped unexpectedly错误,我一开始以为api给的key有问题,于是重新申请了一下,可是问题仍在,于是网上一顿狂搜,发现应该是这样滴:
Java代码
<application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".HelloAndroid" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <uses-library android:name="com.google.android.maps" /> </application>
注意,这个52b54c00c74670da48c1b38ba99fb2c9标签只在f10a234699bec26c5f525eef715ca592标签中才能添加,位置放不对,作为第三方库,就不会被正确加载。
改完这里,继续运行,仍然出现错误,还是has stopped unexpectedly,最后几经实验,终于把问题锁定在了MapActivity这个类上,因为在如同往常一样的继承Activity类的时候,一切正常,GPS也能模拟使用,但是如果一旦继承了MapActivity就会出现上述错误了。突然想起了是不是在build的过程中,库的问题,然后把属性中,Android选项的Project build target选项从Android1.5改选为Google APIs类型,这时候,还得把按照书中作为第三方库添加进入JAVA build path的map.jar库删掉,因为选择了这个之后,在Google APIs里面自动带了mar.jar库。
至此,再重新运行,就可以看到我折腾了好几小时的google map了……
烧香……