Den*_*ski 10 android memory-leaks facebook-android-sdk
我试图为我的应用程序制作社交模块,类似于包装器,它将包含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();
}
}
Run Code Online (Sandbox Code Playgroud)
以下是我登录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;
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用登录按钮登录,在这种情况下,我抓住了这个问题和新的问题,并提供以下信息:
以下是我使用LoginButton.class登录的方法:
public void configureFacebook(@NonNull Fragment fragment,
@Nullable String permissions, @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);
}
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何解决这些问题.我做错了什么?
更新:Facebook中的泄漏Activity.class已显示没有旋转设备.
| 归档时间: |
|
| 查看次数: |
1332 次 |
| 最近记录: |