关于Android中使用MapActivity类的问题

最近在学Android,想做个google-map-api的小应用,哪知道费死劲了……
首先是关于<uses-library />的引用位置,书中没有提及,结果程序一运行就出现has stopped unexpectedly错误,我一开始以为api给的key有问题,于是重新申请了一下,可是问题仍在,于是网上一顿狂搜,发现应该是这样滴:
    <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>

注意,这个<uses-library />标签只在<application />标签中才能添加,位置放不对,作为第三方库,就不会被正确加载。

改完这里,继续运行,仍然出现错误,还是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了……
烧香……

出处:http://blog.csdn.net/yhys_999/archive/2011/02/17/6191880.aspx

你可能感兴趣的:(android,.net,Google,Blog)