Iamは、受信者ファイルのメタデータで指定された値を取得できません。iamはnullポインター例外を取得します。
マニフェストファイルで指定しました
<receiver android:name=".SmsReceiver" >
<intent-filter android:priority="10">
<action
android:name="android.provider.Telephony.SMS_RECEIVED"
android:enabled="true" />
<meta-data android:name="Algorithm" android:value="AES"/>
</intent-filter>
</receiver>
と受信者のiamで指定
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// ---get the SMS message passed in---
Bundle bundle = intent.getExtras();
ActivityInfo appi = null;
try {
appi = context.getPackageManager().getReceiverInfo(new ComponentName(context,"intgafaes.mobileafaes.androidafaes.securesms.ADDFriendSmsReceiver"), PackageManager.GET_META_DATA);
} catch (NameNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
Bundle bundle1 = appi.metaData;
String value = bundle1.getString("Algorithm");
System.out.println("Value is "+value);
if(value.equals("AES"))
{
System.out.println("entered into onRecieve");
}