0

mobilefirst ハイブリッド アプリケーションで SQL アダプターを使用しています。ログインと他のすべての Sql アダプターは、Web シミュレーターで完全に機能しています。

このアプリを Android デバイスで試し、デバイスでログイン アクションを実行したところ、LogCat (USB 経由でインストールされたアプリ) で次のエラーが発生しました。USB と .apk ファイルからアプリをインストールしました。2 つのケースで、Android デバイスでログインが機能しません。

ERROR:

Request timeout for [/apps/services/api/projectfolder/android/query]

WLNativeXHRPlugin$NativeXHRPostListener.onException in WLNativeXHRPlugin.java:154 :: onException

org.apache.http.conn.ConnectTimeoutException: Connect to .. timed out

at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121)

at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)

at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)

at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)

at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)

at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:670)

at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:509)

at com.worklight.wlclient.WLHybridRequestSender.run(WLHybridRequestSender.java:63)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)

at java.lang.Thread.run(Thread.java:856)

WIFI を介して同じネットワークに接続された Android デバイス。このアプリケーションは、Android デバイスで発生する Web シミュレータの問題で完全に動作します。

Adapter XML データベース接続用

<dataSourceDefinition>
                <driverClass>com.mysql.jdbc.Driver</driverClass>
                <url>jdbc:mysql://databaseurl:3306/batabasename</url>
                <user>username</user>
                <password>password</password> 
            </dataSourceDefinition>

私のデータベースの URL は、localhost(127.0.0.1) の URL ではなく公開の URL です。ブラウザシミュレーターで完全に動作

4

2 に答える 2

0

携帯電話を再起動してみてください。これで問題は解決しました。

于 2015-01-28T09:05:41.717 に答える
0

ログが表示されています:

org.apache.http.conn.ConnectTimeoutException: への接続 .. タイムアウト

どこに接続しようとしたかを把握する必要があります。「..」に変更する前に何がありましたか?

いくつかの理論:

  1. localhost を指している場合は、それを IP アドレスに変更します。
  2. 複数の IP アドレスを持っている場合は、サーバーが使用する正しいものを使用していることを確認してください (ネットワーク カードを無効にして、1 つの IP アドレスしか持たないようにすることができます。サーバーは自動的にそれを選択する必要があります。アダプターにも。
于 2015-01-06T15:49:50.893 に答える