2016-08-08 48 views
0
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.neo.gson"> 

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

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <activity android:name=".MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

</manifest> 

HttpURLConnection stürzt meine Anwendung, weil Internet-Erlaubnis nicht einmal gewährt wird, obwohl ich verwende Tag in Manifest-DateiAndroid <Uses-permission> nicht unerlaubt in

It says no permissions requested

logcat Extrakt:

08-08 16:50:32.167 3625-3625/com.example.neo.gson E/AndroidRuntime: FATAL EXCEPTION: main 
                   Process: com.example.neo.gson, PID: 3625 
                   java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.neo.gson/com.example.neo.gson.MainActivity}: android.os.NetworkOnMainThreadException 
                    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2434) 
                    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494) 
                    at android.app.ActivityThread.access$900(ActivityThread.java:157) 
                    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1356) 
                    at android.os.Handler.dispatchMessage(Handler.java:102) 
                    at android.os.Looper.loop(Looper.java:148) 
                    at android.app.ActivityThread.main(ActivityThread.java:5525) 
                    at java.lang.reflect.Method.invoke(Native Method) 
                    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:730) 
                    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620) 
                   Caused by: android.os.NetworkOnMainThreadException 
                    at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273) 
                    at java.net.InetAddress.lookupHostByName(InetAddress.java:436) 
                    at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252) 
                    at java.net.InetAddress.getAllByName(InetAddress.java:215) 
                    at com.android.okhttp.internal.Network$1.resolveInetAddresses(Network.java:29) 
                    at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:188) 
                    at com.android.okhttp.internal.http.RouteSelector.nextProxy(RouteSelector.java:157) 
                    at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:100) 
                    at com.android.okhttp.internal.http.HttpEngine.createNextConnection(HttpEngine.java:357) 
                    at com.android.okhttp.internal.http.HttpEngine.nextConnection(HttpEngine.java:340) 
                    at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:330) 
                    at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:248) 
                    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:433) 
                    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:384) 
                    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:231) 
                    at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210) 
                    at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java) 
                    at com.example.neo.gson.MainActivity.onCreate(MainActivity.java:47) 
                    at android.app.Activity.performCreate(Activity.java:6272) 
                    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2387) 
                    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494)  
                    at android.app.ActivityThread.access$900(ActivityThread.java:157)  
                    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1356)  
                    at android.os.Handler.dispatchMessage(Handler.java:102)  
                    at android.os.Looper.loop(Looper.java:148)  
                    at android.app.ActivityThread.main(ActivityThread.java:5525)  
                    at java.lang.reflect.Method.invoke(Native Method)  
                    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:730)  
                    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620)  

können Sie bitte helfen?

ich Eibisch und meine targetSdkVersion bin mit 23 Ich nenne HttpURLConnection innen onCreate Methode

+0

Verwenden Sie Marshmallow? Wo rufst du deine httpurlconnection an? –

+1

"HttpURLConnection stürzt meine App ab" - bearbeiten Sie Ihre Frage und geben Sie eine [mcve] ein, einschließlich des abstürzenden Codes und der vollständigen Java-Stack-Ablaufverfolgung des Absturzes. "Es heißt, keine Berechtigungen angefordert" - das listet "gefährliche" Berechtigungen auf; Keine Ihrer Berechtigungen hat das 'protectionLevel'. – CommonsWare

+0

Darf ich fragen, welche Android-Version Ihre Zielkompilierversion für Ihr Anwendungsprojekt ist? –

Antwort

0

Problem dank

Sie können jedes Netzwerk auf dem Haupt-Thread nicht @JoxTraex gelöst wurde ausführen aufruft. Verwenden Sie eine AsyncTask, um Ihren Netzwerkanruf auszuführen.

0

Sie können keine Netzwerkaufrufe für den Hauptthread ausführen. Verwenden Sie eine AsyncTask, um Ihren Netzwerkanruf auszuführen.