当前位置: 首页 > 知识库问答 >
问题:

Android Java应用程序-Java.net.SocketException:拒绝权限

佴德曜
2023-03-14

为我的android应用程序使用MYSQL:

主要活动。

public class MainActivity extends Activity implements OnClickListener {

Button login;
EditText username, password;
TextView status;
HttpPost httppost;
StringBuffer buffer;
HttpResponse response;
HttpClient httpclient;
List<NameValuePair> nameValuePair;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    setup();
}

private void setup() {
    // TODO Auto-generated method stub

    username = (EditText) findViewById(R.id.username);
    password = (EditText) findViewById(R.id.password);
    login = (Button) findViewById(R.id.login);
    status = (TextView) findViewById(R.id.status);
    login.setOnClickListener(this); 
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

    switch(v.getId()) {
    case R.id.login:

        login();

        break;
    }
    }

private void login() {
    // TODO Auto-generated method stub
    try {
        httpclient= new DefaultHttpClient();
        httppost= new HttpPost("http://109.74.245.109/~profiled/android/index.php"); 
    //  Adding Data:
        nameValuePair = new ArrayList<NameValuePair>(1);
    //  Always use the same variable name for posting i.e the android side variable name and php side variable name should be similar,
        nameValuePair.add(new BasicNameValuePair("username",username.getText().toString().trim()));
        nameValuePair.add(new BasicNameValuePair("password",password.getText().toString().trim()));
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePair));
    // Execute HTTP Post Request
        response = httpclient.execute(httppost);



        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        final String response = httpclient.execute(httppost, responseHandler);
        status.setText(""+response);
        if(response.equalsIgnoreCase("No user found")) {

            startActivity(new Intent(MainActivity.this, UserPage.class));
        }


        }catch (Exception e) {
            e.printStackTrace();
        }
    }
}
05-17 13:39:25.309: W/System.err(292): java.net.SocketException: Permission denied
05-17 13:39:25.318: W/System.err(292):  at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocketImpl(Native Method)
05-17 13:39:25.318: W/System.err(292):  at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocket(OSNetworkSystem.java:186)
05-17 13:39:25.318: W/System.err(292):  at org.apache.harmony.luni.net.PlainSocketImpl.create(PlainSocketImpl.java:265)
05-17 13:39:25.318: W/System.err(292):  at java.net.Socket.checkClosedAndCreate(Socket.java:873)
05-17 13:39:25.318: W/System.err(292):  at java.net.Socket.connect(Socket.java:1020)
05-17 13:39:25.333: W/System.err(292):  at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:143)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
05-17 13:39:25.337: W/System.err(292):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
05-17 13:39:25.337: W/System.err(292):  at com.profiledt.helloworld.MainActivity.login(MainActivity.java:88)
05-17 13:39:25.337: W/System.err(292):  at com.profiledt.helloworld.MainActivity.onClick(MainActivity.java:70)
05-17 13:39:25.337: W/System.err(292):  at android.view.View.performClick(View.java:2408)
05-17 13:39:25.337: W/System.err(292):  at android.view.View$PerformClick.run(View.java:8816)
05-17 13:39:25.337: W/System.err(292):  at android.os.Handler.handleCallback(Handler.java:587)
05-17 13:39:25.337: W/System.err(292):  at android.os.Handler.dispatchMessage(Handler.java:92)
05-17 13:39:25.357: W/System.err(292):  at android.os.Looper.loop(Looper.java:123)
05-17 13:39:25.357: W/System.err(292):  at android.app.ActivityThread.main(ActivityThread.java:4627)
05-17 13:39:25.357: W/System.err(292):  at java.lang.reflect.Method.invokeNative(Native Method)
05-17 13:39:25.357: W/System.err(292):  at java.lang.reflect.Method.invoke(Method.java:521)
05-17 13:39:25.357: W/System.err(292):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-17 13:39:25.357: W/System.err(292):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-17 13:39:25.357: W/System.err(292):  at dalvik.system.NativeStart.main(Native Method)
  • 无法连接到mysql数据库
  • 与IP地址和我的服务器有关吗?

共有1个答案

魏康安
2023-03-14

将此添加到清单中并进行检查。

<uses-permission android:name="android.permission.INTERNET"/>
 类似资料:
  • 大家好,我正在尝试阅读一个网站的内容与以下代码 但我得到以下错误,我不知道如何解决它。 如果你有什么想法,不要害羞。

  • 我得到了一个Android应用程序,但当我启动它时,我得到了一个错误在我的控制台。我正在使用一个数据报套接字创建连接,并且使用了两个类:(这是应用程序的主要活动)和来创建连接。 这里的代码MainActivity: 但它不起作用。

  • 我的NodeJS应用程序的gcloud应用程序部署权限或帐户没有变化,它上次正常工作是在7月19日。我在几个月的gap后尝试了一下,现在gcloud app deploy抛出了错误: 错误:初始化缓存失败:创建映像缓存失败:访问缓存映像“asia.gcr.io//app-engine-tmp/build-cache/ttl-7d/users/buildpack-cache/ttl-7d/build

  • 问题内容: 是否可以使用java.util.Logging并登录到Java Webstart应用程序中的文件?我有以下记录代码: 并得到以下异常: 问题答案: 访问控制异常表明: “访问被拒绝(java.util.logging.LoggingPermission控件)” 权限类的javadoc这样说: “当前只有一个名为LoggingPermission的控件。这是“控件”,它具有控制日志记录配

  • 我已经创建了一个自定义内容提供者,它将被更多的应用程序访问。我已经在我的提供者AndroidManifest中包含了权限标记。xml文件,在第二个应用程序中,我包含了uses-permissions标记,但没有成功。Logcat向我展示: 我也搜索过类似的问题,但似乎一切都是正确的。有什么想法吗?谢谢 这是我的提供者AndroidManifest。xml文件: 这是我的第二个应用程序Android

  • 我的java应用程序可以独立运行。但是当我把它作为一个Java的网络启动应用程序运行时,它会启动,但是当我点击某个按钮时会失败。我不知道如何调试它,所以我想我应该添加日志记录。这导致了权限拒绝错误,甚至无法启动。 为了解决这个问题,我补充道 到C:\Program Files\Java\jre1。8.0-171\lib\security\java。策略文件和C:\Program Files\Jav