android permission问题

Perfectsoft 发布于 2012/06/14 16:34
阅读 915
收藏 0

我想做一个网络测试,在电脑本地搭建好了环境(通过浏览器可正常访问),然后我在android模拟器中测试访问,出现了java.net.SockException:Permission Deny (maybe missing INTERNET permission)错误,关键是,我在AndroidMainfest.xml文件中添加了INTERNET权限!好诡异的问题,求教

贴上代码

java代码:

package weather.test;

 

import java.io.BufferedReader;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.URL;

 

import org.apache.http.HttpConnection;

import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.impl.client.DefaultHttpClient;

 

import android.app.Activity;

import android.graphics.Color;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.ListView;

import android.widget.TextView;

import android.widget.Toast;

 

public class WeatherActivity extends Activity {

private TextView mEditText;

private Button mButton;

private ListView mListView;

private String mUrl = "http://www.google.com/ig/api?weather=";

private OnClickListener clickListener = new View.OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

String query = mEditText.getText().toString();

updateListView(query);

}

};

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        

        mEditText = (TextView) findViewById(R.id.editText);

        

        

        mButton = (Button) findViewById(R.id.button);

        mButton.setOnClickListener(clickListener);

    }

    

    private void updateListView(String city) {

     String xml = getXmlData(city);

    

     TextView textView = (TextView) findViewById(R.id.textView);

     textView.setText(xml);

 

    }

    

    private String getXmlData(String city) {

     URL url;

     String data = "the result is: ";

     HttpClient client = new DefaultHttpClient();

     HttpGet httpGet = new HttpGet("http://10.0.2.2:82/test/os.php");

     try {

     HttpResponse response = client.execute(httpGet);

    

     }catch(Exception e) {

     Toast.makeText(WeatherActivity.this, "error:"+e.toString(),Toast.LENGTH_LONG).show();

     }

return data;

    }

    

    

}

 

AndroidManifest.xml代码

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

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="weather.test"

    android:versionCode="1"

    android:versionName="1.0" >

 

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

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

 

    <application

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name" >

        <activity

            android:name=".WeatherActivity"

            android:label="@string/app_name" >

            <intent-filter>

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

 

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

            </intent-filter>

        </activity>

    </application>

 

    

</manifest>

 

我是在模拟器中运行的,出现如下错误

求高手赐教

加载中
0
jeffsui
jeffsui
呵呵,你本地的IP DNS是否设置正确.
P
Perfectsoft
在模拟器里也是可以正常访问网络的
P
Perfectsoft
我本地的IP是动态获取的,DNS没有问题,可以正常访问网络啊,是不是模拟器的网络也要设置下的?
0
zanglaowei
zanglaowei

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

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


今天 我遇到这两句有冲突,android:targetSdkVersion="7"加上,就网络获取失败,不加就网络访问正常?请问你解决了吗?

返回顶部
顶部