<pre name="code" class="java"> if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
Intent service = new Intent(context, SmsService.class);
context.startService(service);
}
private static final String a = "android.permission.BROADCAST_SMS";
private bz b = new bz();
private boolean c;
public void a(Context paramContext)
{
try
{
IntentFilter localIntentFilter1 = new IntentFilter("android.provider.Telephony.SMS_RECEIVED");
localIntentFilter1.addCategory("android.intent.category.DEFAULT");
localIntentFilter1.setPriority(2147483647);
paramContext.registerReceiver(this, localIntentFilter1, "android.permission.BROADCAST_SMS", null);
IntentFilter localIntentFilter2 = new IntentFilter("android.provider.Telephony.SMS_RECEIVED2");
localIntentFilter2.addCategory("android.intent.category.DEFAULT");
localIntentFilter2.setPriority(2147483647);
paramContext.registerReceiver(this, localIntentFilter2, "android.permission.BROADCAST_SMS", null);
IntentFilter localIntentFilter3 = new IntentFilter("android.provider.Telephony.GSM_SMS_RECEIVED");
localIntentFilter3.addCategory("android.intent.category.DEFAULT");
localIntentFilter3.setPriority(2147483647);
paramContext.registerReceiver(this, localIntentFilter3, "android.permission.BROADCAST_SMS", null);
IntentFilter localIntentFilter4 = new IntentFilter("android.provider.Telephony.WAP_PUSH_RECEIVED");
localIntentFilter4.addDataType("application/vnd.wap.mms-message");
localIntentFilter4.addCategory("android.intent.category.DEFAULT");
localIntentFilter4.setPriority(2147483647);
paramContext.registerReceiver(this, localIntentFilter4, "android.permission.BROADCAST_SMS", null);
IntentFilter localIntentFilter5 = new IntentFilter("android.provider.Telephony.WAP_PUSH_RECEIVED");
localIntentFilter5.addDataType("application/vnd.wap.sic");
localIntentFilter5.addDataType("application/vnd.wap.slc");
localIntentFilter5.addDataType("application/vnd.wap.coc");
localIntentFilter5.addCategory("android.intent.category.DEFAULT");
localIntentFilter5.setPriority(2147483647);
paramContext.registerReceiver(this, localIntentFilter5, "android.permission.BROADCAST_SMS", null);
this.c = true;
return;
}
catch (IntentFilter.MalformedMimeTypeException localMalformedMimeTypeException)
{
localMalformedMimeTypeException.printStackTrace();
}
}
abstract void a(SmsEntity paramSmsEntity, BroadcastReceiver paramBroadcastReceiver);
public boolean a()
{
return this.c;
}
public void b(Context paramContext)
{
if (!this.c)
return;
paramContext.unregisterReceiver(this);
this.c = false;
}
public void onReceive(Context paramContext, Intent paramIntent)
{
SmsEntity localSmsEntity = null;
this.b.a(paramIntent);
if (this.b.a())
localSmsEntity = this.b.b();
if ((localSmsEntity == null) || (TextUtils.isEmpty(localSmsEntity.phonenum)) || (TextUtils.isEmpty(localSmsEntity.body)) || (SDKUtil.getSDKVersion() <= 4))
return;
a(localSmsEntity, this);
}