2015-03-27 2 views
0

Внутри моего фрагмента у меня есть OnactiviyResult, который содержит:Facebook Доля результата не возвращается

uiHelper.onActivityResult(requestCode, resultCode, data, new FacebookDialog.Callback() { 
      @Override 
      public void onError(FacebookDialog.PendingCall pendingCall, Exception error, Bundle data) { 
       Log.e("Activity", String.format("Error: %s", error.toString())); 

      } 

      @Override 
      public void onComplete(FacebookDialog.PendingCall pendingCall, Bundle data) { 
       Log.d("Activity", "Success!"); 
       boolean isComplete = FacebookDialog.getNativeDialogDidComplete(data); 
       String postId = FacebookDialog.getNativeDialogPostId(data); 

       if (isComplete) { 
        String completionGesture = FacebookDialog.getNativeDialogCompletionGesture(data); 
        if (completionGesture == null || FacebookDialog.COMPLETION_GESTURE_CANCEL.equals(completionGesture)) { 
         //Show Publish Cancel Toast 
         Toast.makeText(getActivity(), "User canceled facebook post", Toast.LENGTH_SHORT).show(); 


        } else { 
         if (postId != null) { 
          Toast.makeText(getActivity(), "user published", Toast.LENGTH_SHORT).show(); 

          try { 
           ParseObject game = new ParseObject("Deal"); 
           game.put("User", user_ID); 
           game.save(); 
          } catch (ParseException e) { 
           e.printStackTrace(); 
          } finally { 
           Toast.makeText(getActivity(), "got" + user_ID, Toast.LENGTH_SHORT).show(); 
          } 


         } 
        } 
       } 
      } 
     }); 

Проблема, с которой он никогда не попадает в него. ничего не возвращается. Назвать это так:

uiHelper.trackPendingDialogCall(shareDialogBuilder.build().present()); 

Теперь я узнал, что это происходит из-за фрагмента в этом вопросе: Facebook Intent share doesnt show Activity result on share click

Он говорит: «Все, что я сделал, чтобы экспортировать эти коды в моем MainActivity» Как именно он должен выглядеть? Благодаря

ответ

1

Вам нужно сделать

shareFacebookDialog.setFragment(this); 

где «это» фрагмент
, чтобы получить обратный вызов в фрагменте

, когда вы получите результат в onActivityResult

вы может потребоваться сделать resultCode&0xffff , так как некоторые версии Android имеют ошибку с этим и изменили код запроса, не поворачивая его обратно

Смежные вопросы