2011-07-11 99 views
0

这是我第一次玩Android和蓝牙的东西。所以我试着在android.com上的例子BluetoothChat,但我有一些问题。BluetoothChat Android示例运行时错误

多数民众赞成logcat的输出:

 
07-11 10:51:40.000: ERROR/AndroidRuntime(853): FATAL EXCEPTION: main 
07-11 10:51:40.000: ERROR/AndroidRuntime(853): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.android.BluetoothChat/com.example.android.BluetoothChat.BluetoothChat}: java.lang.ClassNotFoundException: com.example.android.BluetoothChat.BluetoothChat in loader dalvik.system.PathClassLoader[/data/app/com.example.android.BluetoothChat-2.apk] 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.os.Handler.dispatchMessage(Handler.java:99) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.os.Looper.loop(Looper.java:123) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread.main(ActivityThread.java:3683) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at java.lang.reflect.Method.invokeNative(Native Method) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at java.lang.reflect.Method.invoke(Method.java:507) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at dalvik.system.NativeStart.main(Native Method) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853): Caused by: java.lang.ClassNotFoundException: com.example.android.BluetoothChat.BluetoothChat in loader dalvik.system.PathClassLoader[/data/app/com.example.android.BluetoothChat-2.apk] 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561) 
07-11 10:51:40.000: ERROR/AndroidRuntime(853):  ... 11 more 
07-11 10:51:40.010: WARN/ActivityManager(133): Force finishing activity com.example.android.BluetoothChat/.BluetoothChat 
07-11 10:51:40.510: WARN/ActivityManager(133): Activity pause timeout for 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文件。也许有问题。

+0

我想你需要检查包名。如果一切完全相同,就不会有任何问题。 – Hein

+0

你可以显示你的项目的目录列表! – Hein

回答

0

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

+0

区分大小写不是问题。包是com.example.android.BluetoothChat,有4个目录,最后一个,BluetoothChat是文件BluetoothChat.java。该程序也被命名为BluetoothChat。 – fluxim

+0

感谢您的回答。 我修好了。 eclipse中的src目录中没有显式的包。我只在这里添加了模具。 – fluxim