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


C# Context.RegisterReceiver方法代码示例

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


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

示例1: Initialize

        public static void Initialize(Context ctx)
        {
            P2PManager.ctx = ctx;

            if (intentFilter == null)
            {
                intentFilter = new IntentFilter();

                intentFilter.AddAction(WifiP2pManager.WifiP2pStateChangedAction);
                intentFilter.AddAction(WifiP2pManager.WifiP2pPeersChangedAction);
                intentFilter.AddAction(WifiP2pManager.WifiP2pConnectionChangedAction);
                intentFilter.AddAction(WifiP2pManager.WifiP2pThisDeviceChangedAction);
            }
            if (manager == null)
            {
                manager = (WifiP2pManager)ctx.GetSystemService(Context.WifiP2pService);
                channel = manager.Initialize(ctx, ctx.MainLooper, null);
            }
            if (receiver == null)
            {
                receiver = new WiFiDirectBroadcastReceiver(manager, channel);
            }

            ctx.RegisterReceiver(receiver, intentFilter);
        }
开发者ID:fubar-coder,项目名称:cryptrans,代码行数:25,代码来源:P2PManager.cs

示例2: PermissionRequested

        /// <summary>
        /// Requests temporary permission for the given package to access the accessory. 
        /// This may result in a system dialog being displayed to the user if permission had not already been granted.
        /// </summary>
        /// <returns>The observable sequence of permission values.</returns>
        /// <param name="manager">The UsbManager system service.</param>
        /// <param name="context">The Context to request the permission from.</param>
        /// <param name="accessory">The UsbAccessory to request permission for.</param>
        public static IObservable<bool> PermissionRequested(this UsbManager manager, Context context, UsbAccessory accessory)
        {
            return Observable.Create<bool> (observer => {
                var usbPermissionReceiver = new UsbAccessoryPermissionReceiver (observer, accessory);
                context.RegisterReceiver (usbPermissionReceiver, new IntentFilter (ACTION_USB_PERMISSION));

                var intent = PendingIntent.GetBroadcast (context, 0, new Intent (ACTION_USB_PERMISSION), 0);
                manager.RequestPermission (accessory, intent);

                return Disposable.Create (() => context.UnregisterReceiver (usbPermissionReceiver));
            });
        }
开发者ID:reactiveui,项目名称:ReactiveUI,代码行数:20,代码来源:UsbManagerExtensions.cs

示例3: GetBatteryLevel

            public static float GetBatteryLevel (Context ctx)
            {
                try {
                    var filter = new IntentFilter (Intent.ActionBatteryChanged);
                    var intent = ctx.RegisterReceiver (null, filter);

                    int level = intent.GetIntExtra ("level", -1);
                    int scale = intent.GetIntExtra ("scale", -1);

                    return level / (float)scale;
                } catch (Java.Lang.Throwable ex) {
                    Log.Warn (Tag, ex, "Failed to determine battery level.");
                    return 0;
                }
            }
开发者ID:karabatov,项目名称:mobile,代码行数:15,代码来源:BugsnagClient.cs

示例4: CheckBatteryCharging

            public static bool CheckBatteryCharging (Context ctx)
            {
                try {
                    var filter = new IntentFilter (Intent.ActionBatteryChanged);
                    var intent = ctx.RegisterReceiver (null, filter);

                    var status = (Android.OS.BatteryStatus)intent.GetIntExtra ("status", -1);
                    return status == Android.OS.BatteryStatus.Charging || status == Android.OS.BatteryStatus.Full;
                } catch (Java.Lang.Throwable ex) {
                    Log.Warn (Tag, ex, "Failed to determine if the battery is charging.");
                    return false;
                }
            }
开发者ID:karabatov,项目名称:mobile,代码行数:13,代码来源:BugsnagClient.cs

示例5: SetRetryBroadcastReceiver

		static void SetRetryBroadcastReceiver(Context context)
		{
			if (sRetryReceiver == null)
			{
				sRetryReceiver = new GCMBroadcastReceiver();
				var category = context.PackageName;

				var filter = new IntentFilter(GCMConstants.INTENT_FROM_GCM_LIBRARY_RETRY);
				filter.AddCategory(category);

				var permission = category + ".permission.C2D_MESSAGE";

				Log.Verbose(TAG, "Registering receiver");

				context.RegisterReceiver(sRetryReceiver, filter, permission, null);
			}
		}
开发者ID:LGM-AdrianHum,项目名称:GCMSharp,代码行数:17,代码来源:GCMRegistrar.cs


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