1

我正在尝试浏览 Facebook SDK 示例,并按照将 SDK 和示例导入 Eclipse 的安装说明进行操作。我没有将它们复制到工作区中,而是将每个项目设置为 Project>Properties>Java Comiler>JDK Compliance 1.6。然后我清理了所有文件,Eclipse 在 Package Explorer 中没有显示任何错误或问题。

当我尝试运行最简单的项目(不需要哈希)时,我收到这些错误

06-02 12:18:08.703: D/AndroidRuntime(2552): Shutting down VM
06-02 12:18:08.703: W/dalvikvm(2552): threadid=1: thread exiting with uncaught exception (group=0x40015578)
06-02 12:18:08.710: E/AndroidRuntime(2552): FATAL EXCEPTION: main
06-02 12:18:08.710: E/AndroidRuntime(2552): java.lang.RuntimeException: Unable to instantiate activity     ComponentInfo{com.facebook.samples.profilepicture/com.facebook.samples.profilepicture.ProfilePictureSampleActivity}: java.lang.ClassNotFoundException: com.facebook.samples.profilepicture.ProfilePictureSampleActivity in loader dalvik.system.PathClassLoader[/data/app/com.facebook.samples.profilepicture-2.apk]
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1573)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.os.Looper.loop(Looper.java:130)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread.main(ActivityThread.java:3687)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at java.lang.reflect.Method.invokeNative(Native Method)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at java.lang.reflect.Method.invoke(Method.java:507)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at  dalvik.system.NativeStart.main(Native Method)
06-02 12:18:08.710: E/AndroidRuntime(2552): Caused by: java.lang.ClassNotFoundException: com.facebook.samples.profilepicture.ProfilePictureSampleActivity in loader dalvik.system.PathClassLoader[/data/app/com.facebook.samples.profilepicture-2.apk]
06-02 12:18:08.710: E/AndroidRuntime(2552):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
 06-02 12:18:08.710: E/AndroidRuntime(2552):    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
06-02 12:18:08.710: E/AndroidRuntime(2552):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565)
06-02 12:18:08.710: E/AndroidRuntime(2552):     ... 11 more

我尝试直接导入我的工作区..同样的错误...我查看了下面的 Android 清单:并且没有发现任何问题...我查看了项目的顺序 --> 属性 --> Java 构建路径 -->订购和出口,那里什么也看不到。

这让我发疯...

有人知道我需要做什么吗?(我什至在考虑重新安装 ADT .. 但我认为这对我没有任何好处)

这是清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.facebook.samples.profilepicture"
      android:versionCode="1"
      android:versionName="1.0">
<uses-sdk android:minSdkVersion="8"/>
<uses-permission android:name="android.permission.INTERNET"/>
<application android:label="@string/app_name"
             android:icon="@drawable/icon" >
    <activity
            android:name=".ProfilePictureSampleActivity"
            android:label="@string/app_name"
            android:windowSoftInputMode="adjustResize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

4

1 回答 1

4

我花了几天的时间来解决这个问题,但这最终让事情对我有用:

在 FacebookSDK 项目和所有示例项目上,右键单击并选择“Android Tools->Add Support Library”。然后再次右键单击并选择“Android工具->修复项目属性”

在 FacebookSDK 项目中,转到“Properties->Java Build Path”并选择“Order and Export”选项卡,并确保选中“android-support-v4.jar - FacebookSDK/libs”。

在所有示例项目中,转到“Properties->Java Build Path”并选择“Libraries”选项卡,按“Add Jars...”按钮,然后选择 FacebookSDK/ 中的 android-support-v4.jar 文件您下载的 libs 目录。现在转到“订购和导出”选项卡,并检查“android-support-v4.jar - FacebookSDK/libs”。

现在清理 FacebookSDK 和所有示例项目。

此时,至少不需要您在 Facebook 注册为开发人员的示例项目应该可以工作。例如, ProfilePictureSample 应该可以工作。

于 2013-06-11T03:27:40.127 回答