2012-03-29 10 views
0

現在、MIUI(Gingerbread 2.3.7)を搭載したHD2でアプリをテストしています。 BroadcastReceiverをインスタンス化して受信SMSを傍受し、それを登録します。数秒後、MIUIがクラッシュしてアニメーションが起動します。MIUI(リスナーを有効にしたSMS受信時のAndroidクラッシュ)

携帯電話はWM6.5とAndroidの間でデュアルブートしています。私はテストする他のAndroidの携帯電話がありません。私の実験から、クラッシュは、電話が私が待っているSMSを受け取ったときに起こります。 クラッシュに関するログメッセージは表示されません。ブロードキャストレシーバーの1行は実行されません。ここで

は私がリスナー

try { 
     smsReceiver = new SmsReceiver(); 
     IntentFilter iFilter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED"); 
     iFilter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); 
     registerReceiver(smsReceiver, iFilter); 
    } catch (RuntimeException ex) { 
     Log.e("MyActivity", "Error"); 
     throw ex; 
    } 

を設定する方法のマニフェスト

<receiver 
      android:name="SmsReceiver" 
      android:enabled="false" 
      android:permission="android.permission.RECEIVE_SMS" > 
      <intent-filter android:priority="300" > 
       <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 
      </intent-filter> 
     </receiver> 

コードcatchブロックにヒットしません。私のアプリはすでにマニフェストにRECEIVE_SMS権限を持っています。

どうすれば修正できますか?私のアプリは完全にSMSの解析に依存しています。

+0

MIUIのバグだと思っています –

答えて

1

既知のMIUIバグ(source,source)です。

Androidディストリビューションを変更すると問題が解決しました。 SMSを問題なく受け取りました。また、プログラムで定義したときにマニフェストを更新する必要がないことがわかりました。BroadcastReceiver

関連する問題