【问题标题】:BluetoothChat Android Example Runtime ErrorBluetoothChat Android 示例运行时错误
【发布时间】:2011-10-02 15:20:30
【问题描述】:

这是我第一次用安卓和蓝牙玩东西。所以我在 android.com 上尝试了示例 BluetoothChat,但我遇到了一些问题。

这就是 LogCat 的输出:

07-11 10:51:40.000:错误/AndroidRuntime(853):致命异常:主要 07-11 10:51:40.000: 错误/AndroidRuntime(853): java.lang.RuntimeException: 无法实例化活动 ComponentInfo{com.example.android.BluetoothChat/com.example.android.BluetoothChat.BluetoothChat}: java.lang .ClassNotFoundException: com.example.android.BluetoothChat.BluetoothChat 在加载器 dalvik.system.PathClassLoader[/data/app/com.example.android.BluetoothChat-2.apk] 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread.access$1500(ActivityThread.java:117) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.os.Handler.dispatchMessage(Handler.java:99) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.os.Looper.loop(Looper.java:123) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread.main(ActivityThread.java:3683) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 java.lang.reflect.Method.invokeNative(Native Method) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 java.lang.reflect.Method.invoke(Method.java:507) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 07-11 10:51:40.000:错误/AndroidRuntime(853):在 dalvik.system.NativeStart.main(本机方法) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 由: java.lang.ClassNotFoundException: com.example.android.BluetoothChat.BluetoothChat 在加载器 dalvik.system.PathClassLoader[/data/app/com.example .android.BluetoothChat-2.apk] 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:551) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:511) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.Instrumentation.newActivity(Instrumentation.java:1021) 07-11 10:51:40.000: 错误/AndroidRuntime(853): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561) 07-11 10:51:40.000: 错误/AndroidRuntime(853): ... 11 更多 07-11 10:51:40.010: WARN/ActivityManager(133): 强制完成活动 com.example.android.BluetoothChat/.BluetoothChat 07-11 10:51:40.510: WARN/ActivityManager(133): HistoryRecord{406a4340 com.example.android.BluetoothChat/.BluetoothChat} 的活动暂停超时

我知道这应该很容易,但我真的不知道如何解决这个问题。 manfiestfile 看起来像这样(它的原始文件):

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.android.BluetoothChat"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk minSdkVersion="6" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

    <application android:label="@string/app_name"
                 android:icon="@drawable/app_icon" >
        <activity android:name=".BluetoothChat"
                  android:label="@string/app_name"
                  android:configChanges="orientation|keyboardHidden">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".DeviceListActivity"
                  android:label="@string/select_device"
                  android:theme="@android:style/Theme.Dialog"
                  android:configChanges="orientation|keyboardHidden" />
    </application>
</manifest>

其余文件也是原始文件。希望您能够帮助我。我无法导入原始文件,所以我创建了一个新文件并替换了目录和 mainfest 文件。可能有问题。

【问题讨论】:

  • 我想你需要检查包名。如果一切都完全相同,那么应该没有任何问题。
  • 你能显示你的项目的目录列表吗!!

标签: java android eclipse


【解决方案1】:

找不到类com.example.android.BluetoothChat.BluetoothChat。注意包名已经包含BluetoothChat。还要注意类名是区分大小写的,所以如果你的类在包com.example.android.bluetoothchat中,那么它就不起作用了!

【讨论】:

  • 区分大小写不是问题。并且包是com.example.android.BluetoothChat,有4个目录,在最后一个,BluetoothChat是文件BluetoothChat.java。该程序也被命名为 BluetoothChat。
  • 感谢您的回答。我修好了它。 eclipse 的 src 目录中没有显式的包。我只在这里添加了目录。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-23
  • 1970-01-01
  • 1970-01-01
  • 2017-07-09
相关资源
最近更新 更多