Android Google Map API:强制关闭错误
问题描述:
我收到了关于运行sample code of Google API的强制关闭错误消息。是否更新项目是此类项目的解决方案?如果是这样,那么如何在窗口上更新项目。给出的方法here不适用于我的情况。Android Google Map API:强制关闭错误
这里是代码
文件名:HelloGoogleMaps.java
package com.hellogooglemaps.practices;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.os.Bundle;
public class HelloGoogleMaps extends MapActivity {
/** Called when the activity is first created. */
@Override
protected boolean isRouteDisplayed(){
return false;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView)findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
}
@Override
protected boolean isLocationDisplayed(){
return true;
}
}
HelloGoogleMaps舱单
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".HelloGoogleMapsActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".HelloGoogleMaps" android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar" />
<uses-library android:name="com.google.android.maps"/>
</application>
main.xml中
<?xml version="1.0" encoding="utf-8"?>
<com.google.android.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey="0_hYeORLgQUROOOr_RXN2TWG2u2pCDoBYfLCV_w"
/>
答
正如你在你的代码中提到的,你只有一个活动叫做HelloGoogleMaps
而在你的AndroidManifest
中你宣布了两个活动!你的HelloGoogleMapsActivity
是没用的。您收到错误是因为您将HelloGoogleMapsActivity设置为启动器活动并且此活动不存在!
解决方案: 更改AndroidManifest.xml
这样的,你会得到你的应用程序的工作,如果你已经设法正确地得到apikey您的地图:
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar"
android:name=".HelloGoogleMaps" >
<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>
答
面临Force close Error
很多时候我发现后是因为undefined behavioral
,这些类型的错误非常常见。像我们声明Button并且没有在其上分配视图时,我们在另一个函数上使用它。这也是由于没有正确处理异常而出现的。或由于您尝试访问模拟器中的资源(如联系人号码)而无法使用。解决这些类型问题的最佳方法是使用日志并在我们感到困惑的地方打印一些消息并使用logcat。
在上述情况下,我曾在HelloGoogleMapsActivity类受到的力接近误差由于未定义行为
发表您的logcat – 2012-07-08 08:07:04