-1

私のアプリケーションでは、ksoap2 ライブラリを使用していますが、例外が発生しました。アプリケーションがアルゼンチンとパナマで WAP2.0 トランスポートを介して接続しようとすると、送信に失敗し、他のすべての国ではアプリケーションが正常に動作しています。

同じことに対する解決策があれば、親切に教えてください。どんな種類の助けもいただければ幸いです。

4

1 に答える 1

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 接続を開くことができません。

于 2013-01-22T09:05:22.103 に答える