小编Har*_*att的帖子

Android Facebook SDK 4.0.0共享回调无法正常工作

我正在使用以下代码在Facebook上分享链接.当用户在"共享"对话框界面上单击"取消"时,有时会调用onSuccess()回调方法而不是onCancel().并获得post id null.请帮我解决问题?

ShareButton btn;
CallbackManager callbackManager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FacebookSdk.sdkInitialize(this);
    callbackManager = CallbackManager.Factory.create();
    setContentView(R.layout.activity_share);

    btn = (ShareButton) findViewById(R.id.btn_share);

    btn.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>() {
        @Override
        public void onSuccess(Sharer.Result result) {
            Log.e("Tag","Successfully posted");
            Log.e("Post id",result.getPostId());
        }

        @Override
        public void onCancel() {

            Log.e("Tag","Canceled by user");

        }

        @Override
        public void onError(FacebookException error) {

            Log.e("Tag",error.getLocalizedMessage());
        }
    });
    ShareLinkContent content = new ShareLinkContent.Builder()
            .setContentUrl(Uri.parse("My Custom URL"))
            .setContentTitle("Test")
            .build();

    btn.setShareContent(content);

}

@Override
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) …
Run Code Online (Sandbox Code Playgroud)

android facebook-sdk-4.0

9
推荐指数
1
解决办法
1539
查看次数

从领域创建独立对象导致android

我是android领域的新手.我正在使用以下代码从领域获取产品对象.

ProductModel prodObj = realm.where(ProductModel.class).equalTo("product_id","12").findFirst();
Run Code Online (Sandbox Code Playgroud)

如何创建prodObj的独立副本?我想更新一些不应该影响领域数据库的字段值.我不想用setter方法手动设置它,因为模型类包含太多字段.有没有简单的方法来创建prodObj的独立副本?

android realm

8
推荐指数
1
解决办法
5877
查看次数

Android Realm默认数据库清除

如何清除android中的默认域数据库?我尝试了下面的代码,但无法解析方法deleteRealmFile.

方法1:

try {
   Realm.deleteRealmFile(context);
  //Realm file has been deleted.

} catch (Exception ex){
   ex.printStackTrace();
  //No Realm file to remove.
}
Run Code Online (Sandbox Code Playgroud)

我试图删除使用配置.

方法2:

try {
     Realm.deleteRealm(realm.getConfiguration());
     //Realm file has been deleted.
} catch (Exception ex){
     ex.printStackTrace();
     //No Realm file to remove.
}
Run Code Online (Sandbox Code Playgroud)

但是给出了错误:

java.lang.IllegalStateException: It's not allowed to delete the file associated with an open Realm. Remember to close() all the instances of the Realm before deleting its file.
Run Code Online (Sandbox Code Playgroud)

android realm

5
推荐指数
2
解决办法
7502
查看次数

标签 统计

android ×3

realm ×2

facebook-sdk-4.0 ×1