Android Studio에서 facebook-android-sdk-4.19.0을 사용하고 있으며 https://developers.facebook.com/docs/android/getting-started 에서 Facebook 빠른 시작 가이드를 따랐습니다 (빠른 시작 버튼을 클릭하여 자신의 페이스 북 계정으로 로그인). 가이드에서는 앱 로그를 추적하기 위해 스 니펫에 다음 코드를 복사하여 붙여 넣으라고합니다.
import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(getApplicationContext());
AppEventsLogger.activateApp(this);
}
}
그러나 android studio에서 코드를 복사하여 붙여 넣으면 모든 FacebookSdk.sdkInitialize () 메서드가 더 이상 사용되지 않는 것으로 보입니다. https://developers.facebook.com/docs/reference/android/current/class/FacebookSdk/ 의 문서 는 sdkInitialize () 대신 sdk를 초기화하는 데 사용할 방법에 대해 아무것도 알려주지 않습니다. 어떤 방법을 사용해야합니까?
답변
SDK 업그레이드에 대한 문서에서 :
이제 Facebook SDK는 애플리케이션 시작시 자동으로 초기화됩니다. 메인 프로세스에서 Facebook SDK를 사용 중이고 SDK 초기화 완료시 콜백이 필요하지 않은 경우 이제 FacebookSDK.sdkInitialize에 대한 호출을 제거 할 수 있습니다. 콜백이 필요한 경우 코드에서 콜백을 수동으로 호출해야합니다.
: 참조 https://developers.facebook.com/docs/android/upgrading-4x
최신 정보
SDK 4.22에서 title
, description
, caption
및 image
필드는 FBSDKShareLinkContent
사용되지 않습니다. 사용에서 제거하는 것을 고려하십시오.
답변
FacebookSdk.sdkInitialize(getApplicationContext());
이 메서드는 더 이상 사용되지 않으므로 클래스에서이 코드 줄을 삭제하면됩니다. 최신 Facebook에 따르면 이제 SDK를 수동으로 초기화 할 필요가 없으므로 자체적으로 초기화됩니다.
답변
따라서 더 이상 사용되지 않는 메서드를 호출하는 대신 AppEventsLogger.activateApp(Application)
애플리케이션 클래스의 onCreate () 내부에서 호출 할 수 있습니다.
public class MyApplication extends Application{
@Override
public void onCreate() {
super.onCreate();
AppEventsLogger.activateApp(getApplication());
}
}
답변
내 요구 사항은 앱 시작시 autoInit를 비활성화하고 Activity의 onCreate 메서드에서 초기화하는 것이 었습니다. 앱 시작 전에 AutoInit으로 인해 Flutter 앱이 느린 네트워크 연결에서 시작하는 데 시간이 걸립니다.
-
매니페스트에서 AutoInit 비활성화
<meta-data android:name="com.facebook.sdk.AutoInitEnabled" android:value="false"/>
-
활동의 onCreate 메서드에서 Fb SDK 초기화
FacebookSdk.fullyInitialize(); AppEventsLogger.activateApp(application);
답변
FacebookSdk.sdkInitialize(getApplicationContext());
Facebook 문서에 따르면이 메서드가 필요하지 않습니다.이 함수는 Facebook 앱 ID와 같은 AndroidManifest에 적절한 항목이 나열되는 경우 앱 시작시 Facebook SDK를 자동으로 호출합니다. ‘activateApp’의 자동 이벤트 로깅은 ‘com.facebook.sdk.AutoLogAppEventsEnabled’매니페스트 설정을 통해 제어 할 수 있습니다.