我试图为我的应用程序制作社交模块,包括包装,包含Google,Facebook和twitter集成模板.
现在我正在使用Facebook SDK,并决定在我的应用程序中使用LeakCanary,成功登录后,我旋转了几次设备,并看到以下信息:
MainActivity.class:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); setFragment(); } private void setFragment(){ getSupportFragmentManager() .beginTransaction() .add(R.id.container,new MainFragment()) .commit(); } }
这是我如何登录Facebook:
public void configureFacebook(@NonNull Fragment fragment,@Nullable String permissions,@Nullable String requestFields) { setPermissionAndRequestFields(permissions,requestFields); loginManager = LoginManager.getInstance(); callbackManager = CallbackManager.Factory.create(); loginManager.registerCallback(callbackManager,facebookCallback); loginManager.logInWithReadPermissions(fragment,Arrays.asList(this.permissions)); loginManager=null; }
我尝试使用登录按钮登录,在这种情况下,我抓住这个问题和新的,与以下信息:
这是我如何使用LoginButton.class登录:
public void configureFacebook(@NonNull Fragment fragment,@Nullable String requestFields,@NonNull LoginButton button) { callbackManager = CallbackManager.Factory.create(); setFbButton(button); setPermissionAndRequestFields(permissions,requestFields); fbButton.setFragment(fragment); fbButton.setReadPermissions(this.permissions); fbButton.registerCallback(callbackManager,facebookCallback); }
我不知道如何解决这些问题.我做错了什么?
更新:Facebook中的泄漏Activity.class已显示没有旋转设备.