Pregunta ¿Qué permiso necesito para acceder a Internet desde una aplicación de Android?


Recibo la siguiente excepción ejecutando mi aplicación:

java.net.SocketException: Permission denied (maybe missing INTERNET permission)

¿Cómo resuelvo el problema de permiso faltante?


516
2018-03-04 10:52


origen


Respuestas:


En el último lanzamiento de Google Play, Google eliminó la necesidad de pedir permiso para Internet ya que "la mayoría de las aplicaciones lo necesitan de todos modos hoy en día". Sin embargo, para los usuarios que tienen versiones anteriores, se recomienda dejar el código a continuación en su manifiesto

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

88
2018-06-08 15:56



Añade el INTERNET permiso para su archivo de manifiesto

Tienes que agregar esta línea:

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

fuera de la etiqueta de la aplicación en su AndroidManifest.xml


1100
2018-03-04 10:53



acaba de poner por encima de la línea como a continuación

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

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

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >


    <activity
        android:name="com.example.exp.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>
</application>


72
2017-09-28 06:34



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

38
2017-12-24 09:16



Si desea utilizar Internet en su aplicación, así como comprobar el estado de la red, es decir, si la aplicación está conectada a Internet, debe utilizar el código que se encuentra debajo del application etiqueta.

Para el permiso de Internet:

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

Para el estado de la red de acceso:

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

Código completo:          

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

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >


    <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>
</application>

12
2017-11-30 07:54



si solo usa internet entonces use-

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

si está obteniendo el estado de internet, use también -

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

justo arriba de la etiqueta de la aplicación.


6
2018-02-04 08:27



Simplemente ponga el código debajo en AndroidManifest:

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

3
2018-02-18 10:59



olvídate de agregar el permiso en el manifiesto Agrega este código como método

public static boolean hasPermissions(Context context, String... permissions)
{
    if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && context != null && permissions != null)
    {
        for (String permission : permissions)
        {
            if (ActivityCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED)
            {
                return false;
            }
        }
    }
    return true;
}

y escribe esto en tu Principal

int PERMISSION_ALL = 1;
    String[] PERMISSIONS = {Manifest.permission.READ_CONTACTS, Manifest.permission.WRITE_CONTACTS, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_SMS, Manifest.permission.CAMERA};

    if (!hasPermissions(this, PERMISSIONS)) {
        ActivityCompat.requestPermissions(this, PERMISSIONS, PERMISSION_ALL);
    }

2
2018-01-20 10:56



Según las versiones actuales, Android no solicita permiso para interactuar con Internet, pero puede agregar el siguiente código que ayudará a los usuarios que usan versiones anteriores Solo agrégalos a AndroidManifest

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

2
2017-08-12 11:58



Use estos:

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

0
2018-06-28 18:01