1. 程式人生 > >【Android】java.lang.SecurityException: getDeviceId: Neither user xxxxx nor current process has androi

【Android】java.lang.SecurityException: getDeviceId: Neither user xxxxx nor current process has androi

錯誤異常

java.lang.SecurityException: getDeviceId: Neither user xxxxx nor current process has android.permission.READ_PHONE_STATE.

這裡的getDeviceId可能是獲取系統狀態或內容的操作,最後的android.permission.READ_PHONE_STATE 也可能是其它許可權,具體可以檢視 Android文件中的許可權分組

產生原因

使用Android Studio編譯專案的時候將 app/build.gradle

中的 defaultConfig 設定中的 targetSdkVersion 設定為了23, 這樣 Android Studio在編譯的時候會使用 Android 23 API即Android 6.0來編譯專案,但是,如果你沒有給專案加上動態許可權請求的話,你的應用在安裝到手機的時候將不會獲取任何許可權!!!可以去檢視應用的應用資訊,其中的 Permissions 許可權列表中所有的許可權組都是關閉狀態。

解決辦法

如果你需要緊急避免自己的應用繼續在Android 6.0的系統上崩潰,可以將app/build.gradle中的 targetSdkVersion和compileSdkVersion設定為22或以下版本,這樣的話,編譯出來的app會在Android 6.0上以相容模式執行,可以獲取需要的許可權,但隨著Android 6.0的普及,我還是推薦大家儘量給專案加上動態許可權時的判斷以及邏輯處理。

參考連結

相關推薦

Androidjava.lang.SecurityException: getDeviceId: Neither user xxxxx nor current process has androi

錯誤異常 產生原因 解決辦法 參考連結 錯誤異常 java.lang.SecurityException: getDeviceId: Neither user xxxxx nor current process has android.pe

Android學習java.lang.SecurityException: ConnectivityService: Neither user 10134 nor current process

參考 修改AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:androi

Androidjava.lang.RuntimeException: java.lang.Throwable: A WebView method was called on thread 'JavaBridge'.

ole lang exp blog web ref overflow post exce 一、問題 Java調用JS事件出現 java.lang.RuntimeException: java.lang.Throwable: A WebView method was call

Androidjava.lang.IllegalArgumentException Illegal character in scheme 異常

在使用字串拼接成url地址進行資料請求的時候,有時在資料請求的時候會出現 java.lang.IllegalArgumentException: Illegal character in scheme at index 0 的異常。比如一個完整的url地址:

java.lang.SecurityException: Neither user *** nor current process has android.permission.READ_PHONE

安卓開發過程中,我們會經常遇到一些另類的機型,需要單獨適配一下。比如,我遇到了一個問題: java.lang.SecurityException: Neither user 10253 nor current process has android.permission.READ_PHONE

異常java.lang.IllegalArgumentException: Cannot locate declared field class org.apache.http.impl.client.HttpClientBuilder.dnsResolver 的解決方案

pcl group lan cnblogs cat resolv artifact exceptio 網頁 起因:使用htmlunit爬取外部網頁的時候遇到這個異常:java.lang.IllegalArgumentException: Cannot locate decl

tomcatjava.lang.Exception: Socket bind failed: [730013] ???????????????í????×??????·??????×?

【問題描述】          今天啟動tomcat的時候發生瞭如下的報錯: java.lang.Exception: Socket bind failed: [730013] ???????????????í????×??????·??

AndroidJava 匿名類初探~~

在很多工程中可以看到一個操作,Java可以直接new一個介面,然後在new裡面粗暴的加入實現程式碼。就像下面這樣。 思考以下程式碼的輸出是什麼? Runnable x = new Runnable() { @Override public void

exceptionsjava.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to xxxxx

這個問題是我在用jackson將字串準換成指定物件的List,轉換的時候沒有異常,但是通過for迴圈拿出物件使用的時候出現的問題.原來我的轉換是寫在controller裡面,後來為了通用準備寫到工具類中,但是發現一個問題,就是在controller中可以正

java.lang.LinkageError: loader constraint violation: when resolving interface method異常

嚴重: Servlet.service() for servlet jsp threw exception java.lang.LinkageError: loader constraint violation: when resolving interfac

SecurityException: Neither nor current process has android.permission.INSTALL_PACKAGES

最近在嘗試寫一個靜默自動安裝應用的程式,發現出現上述錯誤。最後發現是因為申請了uses-permission android:name="android.permission.INSTALL_PACK

我的Android進階之旅Android 7.0報異常:java.lang.SecurityException: COLUMN_LOCAL_FILENAME is deprecated;

之前開發的一個和第三方合作的apk,在之前公司的 Android 5.1 系統的手錶上執行正常,今天在公司新開發的 Android 7.1系統的手錶上執行的時候,使用 DownloadManager 下載之後,查詢下載狀態的時候,報了異常 java.lan

Android Error java.lang.NoClassDefFoundError 的解決辦法

近期新來了一位同事,從SVN down下程式碼後,總報下面這錯誤,讓新同事很是苦惱,甚至重灌了一遍系統 java java.lang.NoClassDefFoundError 這個錯誤,之前我也沒碰

未解決java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.graphics.Bitm

接應用寶sdk,在支付時 Bitmap bmp = BitmapFactory.decodeResource(mMainActivity.getResources(), R.drawable.sample_yuanbao);                ByteArray

報錯java.lang.ClassNotFoundException: org.apache.ibatis.session.SqlSession

end pac dep ssi apache 明顯 exce tro iba 報錯 java.lang.ClassNotFoundException: org.apache.ibatis.session.SqlSession 或者 java.lang.ClassNotFou

8.0之後 java.lang.SecurityException: Permission Denial: null asks to run as user 864 but is calling from user 0; this requires android.permission.INTERA

在8.0以下啟動新的activity沒問題,但在8.0系統的手機上就報錯,跳轉不成功 錯誤原因: 目標activity中有如下方法 public int getUserId() {}其父類Context.java裡也有該方法 同名了 /** * Get the userId associated wi

Java筆記java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory解決方法

解決方法:匯入commons-logging.jar包 如果用的是maven直接用: <dependency>         <groupId>commons-logging</g

Android 報錯 java.lang.SecurityException: caller uid 10431 is different than the authenticator's uid

Android 開發,賬戶與同步。 在登入時使用系統AccountManager 進行賬戶新增,( 然後在手機-設定-賬戶與同步裡面可以進行檢視。) 在登入完成,進行新增時,報錯java.lang.SecurityException: caller uid 10431 is differen

JavaBug篇java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransactionFact

Got unchecked and undeclared exception which called by 192.168.228.1. service: cn.uppp.user.IUserCor

問題解決Java、eclipse、tomcat、STSjava.lang.OutOfMemoryError: PermGen space

問題描述: PermGen space的全稱是Permanent Generation space,是指記憶體的永久儲存區域OutOfMemoryError: PermGen space從表面上看就是記憶體益出,解決方法也一定是加大記憶體。說說為什麼會記憶體益出:這一部分用