如何将Web服务器连接到我的eclipse android应用程序?

时间:2014-12-31 07:34:46

标签: android json eclipse web-hosting

我想从我的网站链接“http://www.xxxxxxxxxx.com/xxxxxxxx/xxxxxxxx.php”读取数据,这是一个php文件,我以JSON格式转换了所有数据。在浏览器中,当我尝试在android中使用此链接时,我能够从此链接看到我的JSON输出我收到以下错误:unknownhostexception unable to resolve the host:www.xxxxxxxxx.com : No address associated with hostname.

我的示例代码是

     ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();

    String link1="http://xxxxxxxxxxxxx/read_data.php";
    String resp="";


  try{
            resp=CustomHttpClient.executeHttpPost(link1, postParameters);

            Log.i("Web Host Response : ","Resp : "+resp.toString());

      }
      catch(Exception e)
                {

                Log.i("Log tag","Error "+e.getMessage());

                }
朋友们请帮我解决这个问题

我的清单文件是

<?xml version="1.0" encoding="utf-8"?>

package="com.example.recordingsystem"

android:versionCode="1"    

android:versionName="1.0" >

<uses-sdk

    android:minSdkVersion="16"

    android:targetSdkVersion="21" />

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

<application

    android:allowBackup="true"

    android:icon="@drawable/ic_launcher"

    android:label="@string/app_name"

    android:theme="@style/Theme.AppCompat" >


    <activity

        android:name=".MainActivity"

        android:label="@string/app_name" >

        <intent-filter>

            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />

        </intent-filter>

    </activity>

     <activity

        android:name="com.example.recordingsystem.home_page"  

        android:screenOrientation="portrait"

        android:label="@string/app_name" >

    </activity>

</application>

3 个答案:

答案 0 :(得分:0)

在清单中添加以下权限

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

答案 1 :(得分:0)

您需要先添加此权限,

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

然后我建议你使用这个库从服务器获取json数据 使用以下代码块替换try catch块

https://github.com/koush/ion

Ion.with(context)
.load("http://example.com/thing.json")  // you can put any url here which when requested will    return you a json object
.asJsonObject()
.setCallback(new FutureCallback<JsonObject>() {
@Override
public void onCompleted(Exception e, JsonObject result) {
    // do stuff with the result or error
}
});

正如您在浏览器中看到json那样我认为您正在以正确的方式从服务器发送json数据。

答案 2 :(得分:0)

你检查过你的DNS参数吗?  错误:unknownhostexception无法解析主机:www.xxxxxxxxx.com可能意味着你的DNS很糟糕!!如果您知道,请更换您的站点名称。