Android 4.1 SQL server连接

Android 4.1 SQL server连接,android,sql-server,samsung-mobile,jtds,Android,Sql Server,Samsung Mobile,Jtds,我正在使用android 4.1.1、IDE=eclipse和SQL Server 2008 Device= Note 2 android:minSdkVersion="10" 当我在UI线程上运行代码段时,会出现错误“无法从SQL Server获取信息:”,但如果我在后台线程或异步任务线程中运行代码,它会正常工作。如果您能帮助理解这两个过程,我们将不胜感激 注意:“问题发生在我将Minsdk版本从8升级到10时。” 从Android 3.0开始,尝试在主(UI)线程上访问网络会导致: Ne

我正在使用android 4.1.1、IDE=eclipse和SQL Server 2008

Device= Note 2

android:minSdkVersion="10"
当我在UI线程上运行代码段时,会出现错误“无法从SQL Server获取信息:”,但如果我在后台线程或异步任务线程中运行代码,它会正常工作。如果您能帮助理解这两个过程,我们将不胜感激

注意:“问题发生在我将Minsdk版本从8升级到10时。”


从Android 3.0开始,尝试在主(UI)线程上访问网络会导致:

NetworkOnMainThreadException

我猜您没有看到它,因为在您的调用堆栈中,您有:

catch (Exception)
这导致:

"Unable to get information from SQL Server:"

正如您已经发现的,一个单独的线程是解决方案。

感谢您的反馈,Simon。恕我直言,但你是说从Android 3.0开始,每次我们想连接SQL Server时都必须创建一个新线程吗?如果是,最佳做法是什么?或者你知道有任何详细介绍最佳实践的文章吗?是的。一定是新的线索。至于最佳实践,实际上是最佳实践,因为最佳实践说您已经评估了所有可能的实践,衡量了它们并选择了最佳实践,这取决于实际情况,但通常情况下,这没有什么区别,AsyncTask会做得很好。不要在您的游行中大肆宣扬,而是直接从您的应用程序调用SQL Server数据库,最好创建一个web服务来公开所需的数据。它的安全性更好,更便携,更易于在应用程序中使用。更新:很抱歉延迟。将连接代码放在单独的线程中时,此问题已得到修复。感谢所有的帮助。。。
"Unable to get information from SQL Server:"