当前位置: 首页>>代码示例>>Java>>正文


Java BroadcastReceiver.onReceive方法代码示例

本文整理汇总了Java中android.content.BroadcastReceiver.onReceive方法的典型用法代码示例。如果您正苦于以下问题:Java BroadcastReceiver.onReceive方法的具体用法?Java BroadcastReceiver.onReceive怎么用?Java BroadcastReceiver.onReceive使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.content.BroadcastReceiver的用法示例。


在下文中一共展示了BroadcastReceiver.onReceive方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: handleReceiver

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
private void handleReceiver(ReceiverData data) {
    BroadcastReceiver.PendingResult result = data.resultData.build();
    try {
        if (!isBound()) {
            bindApplication(data.component.getPackageName(), data.processName);
        }
        Context context = mInitialApplication.getBaseContext();
        Context receiverContext = ContextImpl.getReceiverRestrictedContext.call(context);
        String className = data.component.getClassName();
        BroadcastReceiver receiver = (BroadcastReceiver) context.getClassLoader().loadClass(className).newInstance();
        mirror.android.content.BroadcastReceiver.setPendingResult.call(receiver, result);
        data.intent.setExtrasClassLoader(context.getClassLoader());
        receiver.onReceive(receiverContext, data.intent);
        if (mirror.android.content.BroadcastReceiver.getPendingResult.call(receiver) != null) {
            result.finish();
        }
    } catch (Exception e) {
        e.printStackTrace();
        throw new RuntimeException(
                "Unable to start receiver " + data.component
                        + ": " + e.toString(), e);
    }
    VActivityManager.get().broadcastFinish(data.resultData);
}
 
开发者ID:7763sea,项目名称:VirtualHook,代码行数:25,代码来源:VClientImpl.java

示例2: handleReceiver

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
private void handleReceiver(ReceiverData data) {
    BroadcastReceiver.PendingResult result = data.resultData.build();
    try {
        Context context = createPackageContext(data.component.getPackageName());
        Context receiverContext = ContextImpl.getReceiverRestrictedContext.call(context);
        String className = data.component.getClassName();
        BroadcastReceiver receiver = (BroadcastReceiver) context.getClassLoader().loadClass(className).newInstance();
        mirror.android.content.BroadcastReceiver.setPendingResult.call(receiver, result);
        data.intent.setExtrasClassLoader(context.getClassLoader());
        receiver.onReceive(receiverContext, data.intent);
        if (mirror.android.content.BroadcastReceiver.getPendingResult.call(receiver) != null) {
            result.finish();
        }
    } catch (Exception e) {
        e.printStackTrace();
        throw new RuntimeException(
                "Unable to start receiver " + data.component
                        + ": " + e.toString(), e);
    }
    VActivityManager.get().broadcastFinish(data.resultData);
}
 
开发者ID:codehz,项目名称:container,代码行数:22,代码来源:VClientImpl.java

示例3: testGetTokenCallbackWithIntent

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
/**
 * Tests the behavior of {@link HttpNegotiateAuthenticator.GetTokenCallback} when the result it
 * receives contains an intent rather than a token directly.
 */
@Test
public void testGetTokenCallbackWithIntent() {
    String type = "Dummy_Account";
    HttpNegotiateAuthenticator authenticator = createWithoutNative(type);
    RequestData requestData = new RequestData();
    requestData.nativeResultObject = 42;
    requestData.authTokenType = "foo";
    requestData.account = new Account("a", type);
    requestData.accountManager = sMockAccountManager;
    Bundle b = new Bundle();
    b.putParcelable(AccountManager.KEY_INTENT, new Intent());

    authenticator.new GetTokenCallback(requestData).run(makeFuture(b));
    verifyZeroInteractions(sMockAccountManager);

    // Verify that the broadcast receiver is registered
    Intent intent = new Intent(AccountManager.LOGIN_ACCOUNTS_CHANGED_ACTION);
    ShadowApplication shadowApplication = Robolectric.getShadowApplication();
    List<BroadcastReceiver> receivers = shadowApplication.getReceiversForIntent(intent);
    assertThat("There is one registered broadcast receiver", receivers.size(), equalTo(1));

    // Send the intent to the receiver.
    BroadcastReceiver receiver = receivers.get(0);
    receiver.onReceive(Robolectric.getShadowApplication().getApplicationContext(), intent);

    // Verify that the auth token is properly requested from the account manager.
    verify(sMockAccountManager).getAuthToken(
            eq(new Account("a", type)),
            eq("foo"),
            isNull(Bundle.class),
            eq(true),
            any(HttpNegotiateAuthenticator.GetTokenCallback.class),
            any(Handler.class));
}
 
开发者ID:lizhangqu,项目名称:chromium-net-for-android,代码行数:39,代码来源:HttpNegotiateAuthenticatorTest.java

示例4: handleReceiver

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
private void handleReceiver(ReceiverData data) {
    BroadcastReceiver.PendingResult result = data.resultData.build();
    try {
        if (!isBound()) {
            bindApplication(data.component.getPackageName(), data.processName);
        }
        Context context = mInitialApplication.getBaseContext();
        Context receiverContext = ContextImpl.getReceiverRestrictedContext.call(context);
        String className = data.component.getClassName();
        BroadcastReceiver receiver = (BroadcastReceiver) context.getClassLoader().loadClass(className).newInstance();
        mirror.android.content.BroadcastReceiver.setPendingResult.call(receiver, result);
        data.intent.setExtrasClassLoader(context.getClassLoader());
        if (data.intent.getComponent() == null) {
            data.intent.setComponent(data.component);
        }
        receiver.onReceive(receiverContext, data.intent);
        if (mirror.android.content.BroadcastReceiver.getPendingResult.call(receiver) != null) {
            result.finish();
        }
    } catch (Exception e) {
        e.printStackTrace();
        throw new RuntimeException(
                "Unable to start receiver " + data.component
                        + ": " + e.toString(), e);
    }
    VActivityManager.get().broadcastFinish(data.resultData);
}
 
开发者ID:coding-dream,项目名称:TPlayer,代码行数:28,代码来源:VClientImpl.java

示例5: broadcastReceiverShouldReceiveAnIntentWhereAirplaneModeIsOff

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
@Test public void broadcastReceiverShouldReceiveAnIntentWhereAirplaneModeIsOff() {
  // given
  final ObservableEmitter<Boolean> emitter = mock(ObservableEmitter.class);
  final BroadcastReceiver receiver = reactiveAirplaneMode.createBroadcastReceiver(emitter);
  final Intent intent = mock(Intent.class);
  when(intent.getBooleanExtra(ReactiveAirplaneMode.INTENT_EXTRA_STATE, false)).thenReturn(false);

  // when
  receiver.onReceive(context, intent);

  // then
  verify(emitter).onNext(false);
}
 
开发者ID:pwittchen,项目名称:ReactiveAirplaneMode,代码行数:14,代码来源:ReactiveAirplaneModeTest.java

示例6: broadcastReceiverShouldReceiveAnIntentWhereAirplaneModeIsOn

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
@Test public void broadcastReceiverShouldReceiveAnIntentWhereAirplaneModeIsOn() {
  // given
  final ObservableEmitter<Boolean> emitter = mock(ObservableEmitter.class);
  final BroadcastReceiver receiver = reactiveAirplaneMode.createBroadcastReceiver(emitter);
  final Intent intent = mock(Intent.class);
  when(intent.getBooleanExtra(ReactiveAirplaneMode.INTENT_EXTRA_STATE, false)).thenReturn(true);

  // when
  receiver.onReceive(context, intent);

  // then
  verify(emitter).onNext(true);
}
 
开发者ID:pwittchen,项目名称:ReactiveAirplaneMode,代码行数:14,代码来源:ReactiveAirplaneModeTest.java

示例7: proceedBroadcast

import android.content.BroadcastReceiver; //导入方法依赖的package包/类
void proceedBroadcast(final Context context, final Intent intent, final WrappedValueProcedure<Boolean> procedure,
					  final @Nullable BroadcastReceiver resultReceiver) {
	if (proceed(OutboundType.BROADCAST, intent, Boolean.FALSE, procedure) == Boolean.FALSE && resultReceiver != null)
		resultReceiver.onReceive(new ReceiverRestrictedContext(context), intent);
}
 
开发者ID:oasisfeng,项目名称:condom,代码行数:6,代码来源:CondomCore.java


注:本文中的android.content.BroadcastReceiver.onReceive方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。