2015-11-14 150 views
3

我試圖在運行時請求權限在android棉花糖。但我的應用程序在這裏崩潰是我的代碼。Android在運行時詢問權限在運行時拋出異常

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()方法時,應用程序崩潰。控制權轉到else部分並調用requestPermissions方法,但應用程序崩潰。 這裏是我的logcat錯誤

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)  

請幫助我,它真的很重要:(

+0

這是真的日誌從您的應用程序 –

回答

-1

INTERNET權限已保護級別normal,你並不需要在運行時要求它,你應該只申報您的應用程序是在清單中使用它:?

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

但我得到同樣的錯誤,每許可,我試着用相機相同的代碼得到同樣的錯誤 – Rahul

相關問題