无法解析在Android MapActivity类 [英] Cannot resolve MapActivity class on Android

查看:87
本文介绍了无法解析在Android MapActivity类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经有11个不同的活动的应用程序。一这些活动是MapActivity(它是一个地图数据可视化)的延伸。为了让这个活动的用户必须通过开展活动​​第​​一出差的话,3等活动。在code启动MapActivity是:

I have an application which has 11 different activities. One of these activities is an extension of MapActivity (it is a map for data visualization). To get to this activity the user must first travel through the launch activity, then 3 other activities. The code to launch the MapActivity is:

Intent i = new Intent(getBaseContext(), MapVis.class);
i.putExtra("edu.uml.cs.isense.visualizations.session_list", sessions);
startActivity(i);

在此执行我从日志的输出如下:

When this is executed I get the following output from the Log:

09-01 14:36:22.389: WARN/dalvikvm(592): Class resolved by unexpected DEX: Ledu/uml/cs/isense/visualizations/MapVis;(0x44981910):0x128260 ref [Lcom/google/android/maps/MapActivity;] Lcom/google/android/maps/MapActivity;(0x44981910):0x13d330
09-01 14:36:22.389: WARN/dalvikvm(592): (Ledu/uml/cs/isense/visualizations/MapVis; had used a different Lcom/google/android/maps/MapActivity; during pre-verification)
09-01 14:36:22.389: WARN/dalvikvm(592): Unable to resolve superclass of Ledu/uml/cs/isense/visualizations/MapVis; (118)
09-01 14:36:22.389: WARN/dalvikvm(592): Link of class 'Ledu/uml/cs/isense/visualizations/MapVis;' failed
09-01 14:36:22.389: DEBUG/AndroidRuntime(592): Shutting down VM
09-01 14:36:22.389: WARN/dalvikvm(592): threadid=1: thread exiting with uncaught exception (group=0x4001d7f0)
09-01 14:36:22.399: ERROR/AndroidRuntime(592): FATAL EXCEPTION: main
09-01 14:36:22.399: ERROR/AndroidRuntime(592): java.lang.NoClassDefFoundError: edu.uml.cs.isense.visualizations.MapVis
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at edu.uml.cs.isense.visualizations.Visualizations.onOptionsItemSelected(Visualizations.java:213)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.app.Activity.onMenuItemSelected(Activity.java:2195)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:730)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:143)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.view.menu.IconMenuView.invokeItem(IconMenuView.java:532)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.view.menu.IconMenuItemView.performClick(IconMenuItemView.java:122)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.view.View$PerformClick.run(View.java:8816)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.os.Handler.handleCallback(Handler.java:587)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.os.Handler.dispatchMessage(Handler.java:92)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.os.Looper.loop(Looper.java:123)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at android.app.ActivityThread.main(ActivityThread.java:4627)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at java.lang.reflect.Method.invokeNative(Native Method)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at java.lang.reflect.Method.invoke(Method.java:521)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at dalvik.system.NativeStart.main(Native Method)
09-01 14:36:22.399: ERROR/AndroidRuntime(592): Caused by: java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at dalvik.system.DexFile.defineClass(Native Method)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:209)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:203)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
09-01 14:36:22.399: ERROR/AndroidRuntime(592):     ... 17 more
09-01 14:36:22.409: WARN/ActivityManager(92):   Force finishing activity edu.uml.cs.isense/.visualizations.Visualizations
09-01 14:36:22.909: WARN/ActivityManager(92): Activity pause timeout for HistoryRecord{44c84a90 edu.uml.cs.isense/.visualizations.Visualizations}

我有设置为谷歌API的目标,这意味着为Android 1.5的应用程序,并指定minsdk要在清单文件3级。使用图书馆的地图也在清单文件。

I do have the target set to Google APIs, this is an app meant for Android 1.5, and specifies the minsdk to be level 3 in the manifest file. uses-library for maps is also in manifest file.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="edu.uml.cs.isense"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.CONTROL_LOCATION_UPDATES"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Isense" android:label="@string/app_name">
   <intent-filter>
             <action android:name="android.intent.action.MAIN" />
             <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
        </activity>
  <activity android:name=".experiments.Experiments" android:label="@string/app_name_experiments"/>
  <activity android:name=".sessions.Sessions" android:label="@string/app_name"/>
  <activity android:name=".people.People" android:label="@string/app_name_people"/>
  <activity android:name=".profile.Profile" android:label="@string/app_name"/>
  <activity android:name=".sensors.Sensors" android:label="@string/app_name_sensors"/>
  <activity android:name=".visualizations.DataTable" android:label="@string/app_name"/>
  <activity android:name=".visualizations.Visualizations" android:label="@string/app_name"/>
  <activity android:name=".sensors.DataListActivity"
                  android:label="@string/selectFile"
                  android:theme="@android:style/Theme.Dialog"
                  android:configChanges="orientation|keyboardHidden" />
        <activity android:name=".sensors.Upload" android:label="@string/app_name_uploader"/>
        <activity android:name=".visualizations.MapVis" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar" />
        <uses-library android:name="com.google.android.maps"/>
</application>
    <uses-sdk android:minSdkVersion="3"/>
</manifest>

我已经在这近2天了,没有结果。似乎有很多有问题开展的其他活动MapActivity人,但有没有什么地方是没有解决办法。有没有人有一个线索?谢谢你。

I have been at this for almost 2 days now with no results. It seems that there are a lot of people having issues launching a MapActivity from other activities but there are no solutions anywhere. Does anyone have a clue? Thanks.

推荐答案

显然,在某些时候我的编译环境得到了真正搞砸了。它看起来像我不知有谷歌API的罐子在我的项目两次,导致冲突。我删除了该项目,并重新创建它,现在的作品。

Apparently at some point my build environment got really messed up. It looked like I somehow had the google APIs jar in my project twice, causing a conflict. I deleted the project and recreated it, works now.

这篇关于无法解析在Android MapActivity类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆