2016-12-20 1 views
1

ファブリックディジットで友達を見つける方法を教えてください。レートリミットファブリックディジットでfind friendsを実装する方法は?

を超えて:私は成功した携帯電話番号の検証を実施したが連絡先をアップロードし、マッチした連絡先を取得するイムができない..私は同じエラーに

エラーが出るたびにき

以下は実装です

registerReceiver(new MyResultReceiver() { 
     @Override 
     public void onReceive(Context context, Intent intent) { 
      super.onReceive(context, intent); 
      if (ContactsUploadService.UPLOAD_COMPLETE.equals(intent.getAction())) { 
       ContactsUploadResult result = intent.getParcelableExtra(ContactsUploadService.UPLOAD_COMPLETE_EXTRA); 
       Log.e("upload", result.totalCount + " " + result.successCount); 
      } 
     } 
    }, new IntentFilter("com.digits.sdk.android.UPLOAD_COMPLETE")); 
    sharedPreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE); 
    Ref = FirebaseDatabase.getInstance().getReference().child("Users"); 


    DigitsAuthButton digitsButton = (DigitsAuthButton) findViewById(R.id.auth_button); 
    digitsButton.setCallback(new AuthCallback() { 
     @Override 
     public void success(DigitsSession session, String phoneNumber) { 
      // TODO: associate the session userID with your user model 
      phone = session.getPhoneNumber(); 
      digitsId = String.valueOf(session.getId()); 
      Toast.makeText(getApplicationContext(), "Authentication successful for " 
        + phoneNumber, Toast.LENGTH_LONG).show(); 
      Log.e("number", "Mobile Number: " + phoneNumber); 
      Log.e("digit", "DigitsID " + session.getAuthToken() + " " + session.getId()); 
      // Digits.getInstance().getActiveSession(); 
      sendDigitANdNumber(String.valueOf(session.getId()), phoneNumber); 
      // startService(new Intent(PhoneVerification.this, MyResultReceiver.class)); 

      startActivity(new Intent(PhoneVerification.this, RecentsTab.class)); 
      finish(); 


     } 

     @Override 
     public void failure(DigitsException exception) { 
      Log.d("Digits", "Sign in with Digits failure", exception); 
     } 
    }); 


} 

Receivr

public class MyResultReceiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     if (ContactsUploadService.UPLOAD_COMPLETE.equals(intent.getAction())) { 
      ContactsUploadResult result = intent.getParcelableExtra(ContactsUploadService.UPLOAD_COMPLETE_EXTRA); 

     } 
    } 



} 

コンタクトクラス

find.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       ContactMatch(); 
      } 
     }); 

    private void ContactMatch() { 
     Digits.uploadContacts(); 
     progressDialog.show(); 

     Digits.findFriends(new ContactsCallback<Contacts>() { 

      @Override 
      public void success(Result<Contacts> result) { 
       if (result.data.users != null) { 
        // Process data 
        progressDialog.dismiss(); 
        linearLayout.setVisibility(View.GONE); 
        Log.e("data", result.toString()); 
       } 
      } 

      @Override 
      public void failure(TwitterException exception) { 
       progressDialog.dismiss(); 
       // Show error 
      } 
     }); 
    } 

答えて

0

Twitterはあなたが特定の時間枠内で彼らのAPIを作ることができる要求の数を制限します。だからあなたはこの限界にぶつかっています。レートリミットの例外がスローされた場合は、ロジックを変更してリクエストを抑制するか、一定の時間待機する必要があります。

レート制限のdocs pageは非常に徹底しているので、確認することをおすすめします。

関連する問題