我在我的 mobilefirst 混合应用程序中使用 SQL 适配器。Login 和所有其他 Sql 适配器在我的 web 模拟器中运行良好。
我刚刚在 android 设备上尝试了这个应用程序并在我的设备中执行登录操作,当时我在我的 LogCat 中收到以下错误(通过 USB 安装的应用程序)。我通过 USB 和 .apk 文件安装了该应用程序。在两种情况下,我的登录在我的 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)
Android 设备通过 WIFI 连接在同一网络中。此应用程序在 Android 设备中发生的网络模拟器问题中运行良好。
适配器 XML 用于数据库连接
<dataSourceDefinition>
<driverClass>com.mysql.jdbc.Driver</driverClass>
<url>jdbc:mysql://databaseurl:3306/batabasename</url>
<user>username</user>
<password>password</password>
</dataSourceDefinition>
我的数据库 url 是公共 url 而不是 localhost(127.0.0.1) url。它在浏览器模拟器中完美运行