Java 类android.content.ReceiverCallNotAllowedException 实例源码
项目:Hitalk
文件:ConnectivityNotifier.java
private boolean tryToRegisterForNetworkStatusNotifications(Context context) {
synchronized (lock) {
if (hasRegisteredReceiver) {
return true;
}
try {
if (context == null) {
return false;
}
context = context.getApplicationContext();
context.registerReceiver(this, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
hasRegisteredReceiver = true;
return true;
} catch (ReceiverCallNotAllowedException e) {
return false;
}
}
}
项目:batteryhub
文件:DataEstimator.java
public void getCurrentStatus(final Context context) {
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
try {
Intent batteryStatus = context.registerReceiver(null, ifilter);
if (batteryStatus != null) {
level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
mHealth = batteryStatus.getIntExtra(BatteryManager.EXTRA_HEALTH, 0);
plugged = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0);
present = batteryStatus.getExtras().getBoolean(BatteryManager.EXTRA_PRESENT);
status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, 0);
technology = batteryStatus.getExtras().getString(BatteryManager.EXTRA_TECHNOLOGY);
temperature = (float) (batteryStatus.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, 0) / 10);
voltage = (float) (batteryStatus.getIntExtra(BatteryManager.EXTRA_VOLTAGE, 0) / 1000);
}
} catch (ReceiverCallNotAllowedException e) {
LOGE(TAG, "ReceiverCallNotAllowedException from Notification Receiver?");
e.printStackTrace();
}
}
项目:condom
文件:CondomCore.java
@Override public Intent registerReceiver(final BroadcastReceiver receiver, final IntentFilter filter,
final @Nullable String broadcastPermission, final @Nullable Handler scheduler) {
if (receiver == null) {
// Allow retrieving current sticky broadcast; this is safe since we
// aren't actually registering a receiver.
return super.registerReceiver(null, filter, broadcastPermission, scheduler);
} else {
throw new ReceiverCallNotAllowedException(
"BroadcastReceiver components are not allowed to register to receive intents");
}
}
项目:batteryhub
文件:NotificationReceiver.java
@Override
public void onReceive(Context context, Intent intent) {
LOGI(TAG, "onReceive called!");
try {
Notifier.updateStatusBar(context);
} catch (ReceiverCallNotAllowedException e) {
e.printStackTrace();
}
}
项目:condom
文件:CondomCore.java
@Override public boolean bindService(final Intent service, final ServiceConnection conn, final int flags) {
throw new ReceiverCallNotAllowedException(
"BroadcastReceiver components are not allowed to bind to services");
}