日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android 开发时遇到的各种问题1--Android双模(CDMA/GSM)手机短信相关

發布時間:2025/6/17 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 开发时遇到的各种问题1--Android双模(CDMA/GSM)手机短信相关 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這篇博客主要是用來記錄平時開發時遇到的各種問題,給大家一個參考,也可以跟大家一起討論討論。

Android雙模(CDMA/GSM)手機短信相關

  參考博客http://blog.sina.com.cn/s/blog_68ebf0be0101awix.html

雙模手機對接收到的短信處理時總是在SmsMessage.createFromPdu的地方出現異常,異常信息:

java.lang.OutOfMemoryError: array size too largeat com.android.internal.telephony.cdma.SmsMessage.parsePdu(SmsMessage.java:658)at com.android.internal.telephony.cdma.SmsMessage.createFromPdu(SmsMessage.java:116)at android.telephony.SmsMessage.createFromPdu(SmsMessage.java:162)

?

由于android系統本身不支持雙卡,如果是雙模手機,調用createFromPdu(byte[] pdu)方法時會產生錯誤,問題就在于源碼的TelephonyManager.getDefault().getPhoneType();該方法的返回值沒有對應的雙模手機的類型,而原生的android系統是不支持雙模手機的。

這里,我改為用ContentResolver 查詢手機通訊錄數據庫

?

Cursor cursor = null;try {cursor = c.getContentResolver().query(Uri.parse("content://sms/inbox"),new String[] {"_id", "address", "body"},where,null,"date desc");if(cursor!=null && cursor.moveToFirst()){address = cursor.getString(1);body = cursor.getString(2); //短信內容 }} catch (Exception e) {e.printStackTrace();} finally {if (cursor != null) {cursor.close();}}

數據庫的操作,大家都很熟悉了,如果字段什么的不知道的話,直接把手機root,拿到數據庫就能看了。或者idea調試的時候也可以查看cursor的字段。

?

?

轉載于:https://www.cnblogs.com/zouzhenglu/p/3181142.html

總結

以上是生活随笔為你收集整理的android 开发时遇到的各种问题1--Android双模(CDMA/GSM)手机短信相关的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。