2013-03-05 77 views
0

我目前正在嘗試創建一個必須從mysql服務器獲取一些數據的應用程序。Android mysql SocketException:拒絕權限

我知道,通常在清單中添加Internet權限可以修復此問題。

然而,當我嘗試這樣做,我得到以下錯誤(logcat中顯示):

> 03-05 20:01:41.604: D/ERROR(25938): java.sql.SQLException: Unable to 
> connect to any hosts due to exception: java.net.SocketException: 
> java.net.SocketException: Permission denied 

通常我會檢查我的Manifest.xml並把所需的代碼,但是我現在的表現是這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.speelveldapp" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk 
    android:minSdkVersion="9" 
    android:targetSdkVersion="17" /> 

<supports-screens 
    android:anyDensity="true" 
    android:smallScreens="true" /> 

<user-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 


<application 

必須有一些我錯過了,但我無法弄清楚什麼。所以如果有人能給我一個線索在哪裏看,這將是偉大的!

+0

您無法連接到遠程mysql數據庫。您必須在遠程數據庫前創建一個Web服務,並通過類似REST的方式與它通話。 – Falmarri 2013-03-05 19:23:55

+1

可以使用android連接到遠程(我的)SQL服務器。你只需要第三方的* .jar文件就可以工作(就像使用普通的java一樣)。請注意,您應該使用3.0.17版本而不是3.1。*(新版本似乎可以在sdkversion 9上運行)。 – 2013-03-05 19:35:02

回答

3

你有一個錯字;

< 用戶 -permission機器人:名稱= 「android.permission.INTERNET對」/>

應該是

< 使用 -permission機器人:name =「android.permission.INTERNET」/>

+0

+1尤其是在加入重點後 – 2013-03-05 19:28:45

+1

Doh!閱讀障礙似乎幫助編程。 – 2013-03-05 19:29:37

+0

@NickOtten這只是做了完全相同的事情足夠的時間來識別它的問題:) – 2013-03-05 19:43:10