我是Android的菜鸟,所以请耐心等待,如果我的帖子是愚蠢的话,请道歉。 基本上,我正在尝试向XML添加mapview,这会导致一些问题,我得到的错误是:
06-30 12:29:04.760: ERROR/AndroidRuntime(320): java.lang.NoClassDefFoundError: package.android.mapclass
据我所知,这次电话会发生错误:
Intent i = new Intent(oldclass.this, mapclass.class);
地图类本身是:
package package.android;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import com.google.android.maps.MapView;
import com.google.android.maps.MapActivity;
import android.util.Log;
public class mapclass extends MapActivity {
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.viewmap);
protected boolean isRouteDisplayed() {
return false;
}
}
如果换掉
,这里就会变得有趣public class mapclass extends MapActivity {
并将其替换为
public class mapclass extends Activity {
然后它绝对正常工作(虽然没有调用MapActivity调用)。 清单中有地图的参考:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="package.android"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-library android:name="com.google.android.maps" />
<uses-library android:name="com.google.android.maps.MapView" />
<uses-library android:name="com.google.android.maps.MapActivity" />
<application android:icon="@drawable/icon"
android:label="@string/app_name">
我猜我在xml中的活动方面做了一些可怕的错误?我试过摆弄,但到目前为止无济于事,有没有人有任何想法?
谢谢,
答案 0 :(得分:0)
第1步:删除第二个和第三个<uses-library>
元素。
步骤2:将您的包更改为不包含package
作为名称的一部分,以最大限度地减少保留关键字问题的可能性。
第3步:删除<uses-permission android:name="android.permission.LOCATION"/>
行,因为没有此类许可。
步骤4:在安装了Google地图的设备或模拟器上运行您的应用程序。
你真正的问题是第4步 - 前三个只是为了清理一下。 FWIW,我还建议您遵循CamelCase惯例作为您的班级名称。