2015-11-14 2 views
3

Я пытался запросить разрешение во время работы в android marshmallow. Но мое приложение разбивается, вот мой код.Android, запрашивающий разрешение при запуске Runtime Exception

private void showWebpage() { 
    if (checkSelfPermission(Manifest.permission.INTERNET) == PackageManager.PERMISSION_GRANTED) { 
     Toast.makeText(this, "Permission Granted", Toast.LENGTH_LONG).show(); 
    } else { 

     requestPermissions(new String[]{Manifest.permission.INTERNET},REQUEST_INTERNET); 
    } 
} 

@Override 
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { 
    super.onRequestPermissionsResult(requestCode, permissions, grantResults); 
} 

Когда я вызываю метод showWebpage(), приложение терпит крах. Элемент управления переходит в другую часть и вызывает метод requestPermissions, но приложение терпит крах. здесь моя ошибка

11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader: Failed to read uid_cputime 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader: java.io.FileNotFoundException: /proc/uid_cputime/show_uid_stat: open failed: ENOENT (No such file or directory) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at libcore.io.IoBridge.open(IoBridge.java:452) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileInputStream.<init>(FileInputStream.java:76) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileInputStream.<init>(FileInputStream.java:103) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileReader.<init>(FileReader.java:66) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.KernelUidCpuTimeReader.readDelta(KernelUidCpuTimeReader.java:71) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8031) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.BatteryStatsImpl$MyHandler.handleMessage(BatteryStatsImpl.java:155) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.Handler.dispatchMessage(Handler.java:102) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.Looper.loop(Looper.java:148) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.HandlerThread.run(HandlerThread.java:61) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.server.ServiceThread.run(ServiceThread.java:46) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader: Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at libcore.io.Posix.open(Native Method) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at libcore.io.IoBridge.open(IoBridge.java:438) 
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileInputStream.<init>(FileInputStream.java:76)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileInputStream.<init>(FileInputStream.java:103)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at java.io.FileReader.<init>(FileReader.java:66)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.KernelUidCpuTimeReader.readDelta(KernelUidCpuTimeReader.java:71)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8031)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.internal.os.BatteryStatsImpl$MyHandler.handleMessage(BatteryStatsImpl.java:155)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.Handler.dispatchMessage(Handler.java:102)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.Looper.loop(Looper.java:148)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at android.os.HandlerThread.run(HandlerThread.java:61)  
11-14 01:33:11.575 1092-1106/system_process E/KernelUidCpuTimeReader:  at com.android.server.ServiceThread.run(ServiceThread.java:46)  

LogCat Пожалуйста, помогите мне, его действительно важно :(

+0

является ли этот журнал действительно из приложения –

ответ

-1

INTERNET разрешение было уровень защиты normal, вам не нужно просить его во время выполнения. Вы должны только объявить приложение использует его в манифесте:

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

Но я получаю ту же ошибку для каждого разрешения, я попробовал тот же код с камерой получать ту же ошибку – Rahul

Смежные вопросы