0

onActivityResult からソケットを開始しようとすると、常にタイムアウトします...私がやろうとしていたのは、onActivityResult からソケット接続を開始するアクティビティを開始することでしたが、ソケットが呼び出されていない他の場所から開始しても問題がない場合onActivityResult から。これは、startActivityForResult と onActivityResult を呼び出すコードです。私はこれを間違っていると確信しています...正しい方向へのプッシュ??

public void scanNow(View view){
        Intent intent = new Intent("com.blah.Blah.client.android.SCAN");
        intent.putExtra("com.blah.Blah.client.android.SCAN.SCAN_MODE", "QR_CODE_MODE");
        startActivityForResult(intent, 0);
        Log.d("debug tag", "started activity");

    }
    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent intent)
    {
       Log.d("debug tag", "inside onActivityResult");
        if (requestCode == 0)
        {
            if (resultCode == RESULT_OK)
            {
                String contents = intent.getStringExtra("SCAN_RESULT");
                String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
                Log.i("debug tag", "contents: "+contents+" format: "+format);
                Intent myIntent = new Intent(com.blah.Blah.Ads);
                startActivity(myIntent);

                // Handle successful scan
            }
            else if (resultCode == RESULT_CANCELED)
            {
                // Handle cancel
                Log.i("debug tag", "Cancelled from main");
            }
        }
    }
4

1 に答える 1

0

動作しない実際のコードを投稿できれば、誰かがあなたを助けてくれるかもしれません。接続が機能する「他の場所」とは何ですか? 同じデバイス、アプリケーション、アクティビティで試しましたか? コードは両方の場所でまったく同じですか?

これらを確認してください:

  • マニフェストにインターネット アクセス許可がある
  • 実際のネットワーク呼び出しはメインスレッドにはありません
于 2015-08-11T11:31:18.027 に答える