4Manuals

  • PDF Cloud HOME

如何在Android上监听服务 Download

    获取Hough线的交点OpenCV C ++ 如何在Android中使用WebRTC缩放相机 如何将字符串“ text1”设置为包含项目text1,text2,test3的组合框的选定项目? 为什么System.Net.Mail.MailAddress构造函数在域部分中解析带有斜杠“ /”的电子邮件? Android 10,API29:在应用程序文件夹中使用C ++库编写文件会使应用程序崩溃 Unity-LineRenderer没有出现在版本(2D)上 按下按钮后,电话中未显示通知 如何将动态值传递给渐变xml ASP.net,使用WebConfig httpErrors重定向到区域内的控制器不起作用 获取会议室详细信息

我有这段代码来检查服务是否处于活动状态,但是我想知道是否有某种方式可以使EditText显示服务的状态,而无需每秒查询一次,或者在单独的线程中进行查询,或以某种方式链接?可以检测服务是否停止

private bool MiServicioEstaCorriendo(Class @class, Context contexto)
        {
            ActivityManager manager = (ActivityManager)contexto.GetSystemService(Context.ActivityService);
            foreach (ActivityManager.RunningServiceInfo service in manager.GetRunningServices(Integer.MaxValue))
            {
                if (@class.Name.Equals(service.Service.ClassName))
                {
                    Log.Info(typeof(BroadcastGps).Name, "MiServcicioEstaCorriendo: true");
                    return true;
                }
            }
            Log.Info(typeof(BroadcastGps).Name, "MiServcicioEstaCorriendo: false");
            return false;
        }

1 个答案:

答案 0 :(得分:0)

您基本上需要一种在应用程序的类之间传递事件/消息的方法。因此,这个问题可能归结于此类模式的Android&C#实现。 Xamarin.Forms具有一个MessagingCenter类,但是由于您使用的是Xamarin.Native,因此您必须自己创建一些东西

Android或C#尚未真正具备任何功能,但是您可以使用“ Listener”(在Android中使用的术语)或“ {{3 }}“(C#中使用的术语)技术。

还有类似Delegate之类的框架,您可以将它们用作Nuget程序包,以简化您的工作。

还有更多资源可以理解这个概念:PubNub,Wikipedia。 还有一些Android资源:IBM,Handlers,AsyncTasks。

别忘了,可能不会在主UIThread上触发您更新EditText的事件,因此除非您强制将更新行强制在UI Thread上运行,否则您将无法看到更改。



Similar searches
    如何在Shopware 6中启用php错误显示? Django从GET 在Ionic复选框上设置值并将其保存在存储器中-Ionic 4 Samsung RA20FH Refrigerator User Manual Samsung RSG5 Refrigerator User Manual