2016-11-15 9 views
1
FATAL EXCEPTION: main 
java.lang.IllegalArgumentException: toUserId must not be null or empty 
at com.sinch.android.rtc.internal.client.calling.DefaultCallClient.call(DefaultCallClient.java:153) 
at com.sinch.android.rtc.internal.client.calling.DefaultCallClient.callUser(DefaultCallClient.java:102) 
at com.sinch.android.rtc.internal.client.calling.DefaultCallClient.callUser(DefaultCallClient.java:97) 
at packagename.SinchService$SinchServiceInterface.callUser(SinchService.java:91) 
at packagename.PlaceCallActivity.callButtonClicked(PlaceCallActivity.java:142) 
at packagename.PlaceCallActivity.access$000(PlaceCallActivity.java:26) 
at packagename.PlaceCallActivity$1.onClick(PlaceCallActivity.java:173) 
at android.view.View.performClick(View.java:4802) 
at android.view.View$PerformClick.run(View.java:20101) 
at android.os.Handler.handleCallback(Handler.java:810) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:189) 
at android.app.ActivityThread.main(ActivityThread.java:5532) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:950) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:745) 

どのような可能性があります問題を詳しく説明してください。私はjsonパーサの要求を使用してデータベースからランダムな携帯電話番号を取得しています。Sinchでヌルまたは空のユーザーIDを取得する

private void callButtonClicked() { 

     try { 

      List<NameValuePair> params = new ArrayList<NameValuePair>(); 
      params.add(new BasicNameValuePair("status",status)); 
      params.add(new BasicNameValuePair("mobile", callNo)); 
      JSONObject json = jsonParser.makeHttpRequest(Config.URL_Random, "POST", 
        params); 
      int success = json.getInt(TAG_SUCCESS); 
      if (success == 1) { 
       response=json.getString(MOBILE); 
      } 

     }catch (JSONException e){ 
      e.printStackTrace(); 
     } 
     String userNo = response; 
      Log.d("Response is",userNo); 
     try { 
      Call call = getSinchServiceInterface().callUser(userNo); 
      if (call == null) { 
       // Service failed for some reason, show a Toast and abort 
       Toast.makeText(this, "Service is not started. Try stopping the service and starting it again before " 
         + "placing a call.", Toast.LENGTH_LONG).show(); 
       return; 
      } 
      String callId = call.getCallId(); 
      Intent callScreen = new Intent(this, CallScreenActivity.class); 
      callScreen.putExtra(SinchService.CALL_ID, callId); 
      startActivity(callScreen); 
     } catch (MissingPermissionException e) { 
      ActivityCompat.requestPermissions(this, new String[]{e.getRequiredPermission()}, 0); 
     } 

    } 

私は、ログイン画面でユーザーの携帯番号を記憶していますし、callnoはLOGGEDINません[OK]をするのTextViewの数値です。このjsonレスポンスレスポンス= json.getString(MOBILE);任意の乱数をデータベースから取得します。だから、私は間違ってやっている場所を教えてください。また、私は、乱数を与える番号を格納している別の男が作成したphp apiが、そこからすべてが完全にうまくいくことを保証していると思います。

答えて

0

に送信するユーザーIDとしてemty強い許可いけませんテキストビューの場合、callbuttonclicked関数の内部でこれを行います。 callNo = userNo.getText()。toString();

userNo =(TextView)findViewById(R.id.number);これをonCreateメソッドで行います。

あなたの問題を解決することを希望します。

+0

それは本当に私を悩ましました。それは本当にばかげていた:/ – SameerKhan1406

0

はあなたデータベース内の空のOTヌル値を持っている私には思える、私たちは、あなたが数を持っている場合と仮定し、あなたのcallNoがcallbuttonclicked の範囲外であるので、多分これを試してみてください

関連する問題