私はRicoh Thetaカメラと通信するアプリを持っています。カメラは、WiFiネットワークとOSC(Open Spherical Camera)Webサーバー(IP 192.168.1.1、ポート80)を作成し、そこでデバイスを接続します。 WiFiのみがオンの場合はすべて正常に動作します。しかし、私もモバイルデータをONにすると、タイムアウトエラーが発生します。3G/4Gがオンの場合、ローカルのWiFiでAndroidボレーは動作しません
ここにはそれが有用であることができるかどうか確認してください、しかし、いくつかのコードです:
protected void executePost(String request, final String body, final RequestListener listener) {
StringRequest stringRequest = new StringRequest(Request.Method.POST, "http://" + mIpAddress + ":" + mPort + request,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if(listener != null) {
handleResponse(response, listener);
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
if(listener != null) {
listener.onError(error);
}
}
}
)
{
@Override
public byte[] getBody() throws AuthFailureError {
return body == null ? null : body.getBytes();
}
};
int socketTimeout = 30000;
RetryPolicy policy = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
stringRequest.setRetryPolicy(policy);
stringRequest.setTag(REQUEST_TAG);
mRequestQueue.add(stringRequest);
}
のみ無線LANを使用するようにバレーボールを伝える方法はありますか?または最初に?
あなたは、接続の種類を確認し、ユーザーがプロセスをさらに聞かせできるようにすることができ、このリンクあなたを助けてくれる http://stackoverflow.com/a/8548926/5372087 –
ご意見ありがとうございます、問題を解決する方法を見つけました(私の答えを参照)。 –