私のアプリケーションでは、ksoap2 ライブラリを使用していますが、例外が発生しました。アプリケーションがアルゼンチンとパナマで WAP2.0 トランスポートを介して接続しようとすると、送信に失敗し、他のすべての国ではアプリケーションが正常に動作しています。
同じことに対する解決策があれば、親切に教えてください。どんな種類の助けもいただければ幸いです。
私のアプリケーションでは、ksoap2 ライブラリを使用していますが、例外が発生しました。アプリケーションがアルゼンチンとパナマで WAP2.0 トランスポートを介して接続しようとすると、送信に失敗し、他のすべての国ではアプリケーションが正常に動作しています。
同じことに対する解決策があれば、親切に教えてください。どんな種類の助けもいただければ幸いです。
国とは関係ないと思いますが、デバイスの構成が異なる可能性があります。
まず、問題のあるデバイスに CID = "WPTCP" のサービス レコードが存在することを確認する必要があります。UID が使用しているものであることを確認します。WAP2 の場合は、「WAP2」が含まれている必要があります。
次に、「deviceside」サフィックスを URL に追加して、他の接続モードを経由しないようにします。
HttpTransport httpTransport = new HttpTransport(requestURL+";deviceside=true;ConnectionUID="+wapuid);
詳細: HTTP またはソケット接続を確立するさまざまな方法
更新:
問題のあるデバイスでこのコードを試してください:
ConnectionFactory factory = new ConnectionFactory();
factory.setPreferredTransportTypes(new int[]{TransportInfo.TRANSPORT_WAP2});
factory.setDisallowedTransportTypes(new int[]{TransportInfo.TRANSPORT_WAP, TransportInfo.TRANSPORT_BIS_B, TransportInfo.TRANSPORT_MDS, TransportInfo.TRANSPORT_TCP_WIFI, TRANSPORT_TCP_CELLULAR});
ConnectionDescriptor cd = factory.getConnection("http://www.google.com");
HttpConnection httpConnection = (HttpConnection) cd.getConnection();
//Now work with httpConnection as usual.
うまくいかない場合は、何らかの理由で WAP2 接続を開くことができません。