对于AppEventsLogger类型,undeateApp(MainActivity)未定义

时间:2015-02-22 11:59:19

标签: android facebook

我正在使用Facebook SDK创建一个简单的Facebook登录应用程序。我创建了一个新的应用程序并在库中添加了Facebook SDK。根据Facebook提供的指示,我已添加此代码:

@Override
    protected void onResume() {
        super.onResume();
        AppEventsLogger.activateApp(this);
    }

但除此之外我还需要添加停用代码,所以我添加了这段代码:

@Override
    protected void onPause() {
        super.onPause();
        AppEventsLogger.deactivateApp(this);
    }

这里' AppEventsLogger.deactivateApp(this);'显示错误" 方法deactivateApp(MainActivity)未定义类型AppEventsLogger "。任何人都可以提供帮助。

1 个答案:

答案 0 :(得分:1)

您需要initialize Facebook SDK才能使用它。在活动或应用中添加FacebookSdk.sdkInitialize来自onCreate的电话:

// Add this to the header of your file:
import com.facebook.FacebookSdk;

// Updated your class body:
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FacebookSdk.sdkInitialize(getApplicationContext());
    // Initialize the SDK before executing any other operations,
    // especially, if you're using Facebook UI elements.
}

向清单添加uses-permission元素:

<uses-permission android:name="android.permission.INTERNET"/>

meta-data元素添加application元素:

<application android:label="@string/app_name" ...>
    ...
    <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
    ...
</application>

使用登录或共享

要使用Facebook登录或共享,还要将FacebookActivity添加到清单:

<activity 
      android:name="com.facebook.FacebookActivity"
      android:configChanges=
             "keyboard|keyboardHidden|screenLayout|screenSize|orientation"
      android:theme="@android:style/Theme.Translucent.NoTitleBar"
      android:label="@string/app_name" />

请查看此链接Getting Started Android SDK