local service,安卓里remote service到底有什么用

时间:2024-09-20 19:48:33 来源:风铃百科 作者:管理员

安卓里remote service到底有什么用

Service是android的一种机制,当它运行的时候如果是LocalService,那么对应的Service是运行在主进程的main线程上的。如:onCreate,onStart这些函数在被系统调用的时候都是在主进程的main线程上运行的。如果是RemoteService,那么对应的Service则是运行在独立进程的main线程上。因此请不要把Service理解成线程,它跟线程半毛钱的关系都没有!

既然这样,那么我们为什么要用Service呢?其实这跟android的系统机制有关,我们先拿Thread来说。Thread的运行是独立于Activity的,也就是说当一个Activity被finish之后,如果你没有主动停止Thread或者Thread里的run方法没有执行完毕的话,Thread也会一直执行。因此这里会出现一个问题:当Activity被finish之后,你不再持有该Thread的引用。另一方面,你没有办法在不同的Activity中对同一Thread进行控制。

举个例子:如果你的Thread需要不停地隔一段时间就要连接服务器做某种同步的话,该Thread需要在Activity没有start的时候也在运行。这个时候当你start一个Activity就没有办法在该Activity里面控制之前创建的Thread。因此你便需要创建并启动一个Service,在Service里面创建、运行并控制该Thread,这样便解决了该问题(因为任何Activity都可以控制同一Service,而系统也只会创建一个对应Service的实例)。

因此你可以把Service想象成一种消息服务,而你可以在任何有Context的地方调用Context.startService、Context.stopService、Context.bindService,Context.unbindService,来控制它,你也可以在Service里注册BroadcastReceiver,在其他地方通过发送broadcast来控制它,当然这些都是Thread做不到的。

network list server服务无法启动

如果出现了NetworkListService服务项失败的问题,大家可以按照下面提供的方法进行解决。

1、按组合键win+r打开运行,输入dcomcnfg并回车;

2、打开组件服务后,依次展开“组件服务→计算机→我的电脑→dcom配置”,找到netprofm;

3、右击netprofm,打开属性;

4、切换到安全选项卡,在“启动和激活权限”中选择“自定义”,并点击“编辑”按钮

5、点击“添加”按钮;

6、输入对象名称“LOCALSERVICE”,点击“检查名称”,没有问题再点击确定;

7、在下方的权限中注意要勾选“本地启动”和“本地激活”,然后点击确定;

8、完成上述设置后,返回返回组件服务窗口,点击本地服务,在所有服务项中找到NetworkListService,并将其启用即可。

retas 系统找不到指定路径

1.首先,请按“Win+R”键输入“Services.msc”回车打开服务;

2.以WindowsFirewall为例,右击点击属性;

3.即可查看服务对应的可运行文件路径;

4.接着回到桌面,按“Win+R”键输入“regedit”回车打开注册表;

5.接下来定位到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/MpsSvc;

6.双击并确认ImagePath的数值数据是否相同,如"%SystemRoot%/system32/svchost.exe-kLocalServiceNoNetwork";

7.如不同,可设置相同完成后重新启动计算机,即可以解决系统找不到指定路径”问题。

apple mobiel device service没有怎么办

答:单击「开始」,单击“开始搜索”框,键入services.msc,然后按Enter。

还可以导出和保存现有设置列表。若要执行此操作,请右键单击“服务”,选择“导出列表”,然后保存设置列表。

右键单击详细信息窗格中要配置的服务,然后单击“属性”。

在“常规”选项卡的“启动类型”中,单击“自动”、“手动”、“禁用”或“自动(延迟的启动)”。

若要指定服务可以用来登录的用户帐户,请单击“登录”选项卡,然后执行下列操作之一:

若要指定服务使用本地系统帐户,请单击“本地系统帐户”。

若要指定服务使用本地服务帐户,请单击“此帐户”,然后键入NTAUTHORITY\LocalService。

若要指定服务使用网络服务帐户,请单击“此帐户”,然后键入NTNTAUTHORITY\NetworkService。

若要指定其他帐户,请依次单击“此帐户”、“浏览”,然后在“选择用户”对话框中指定用户帐户。完成操作后,请单击“确定”。

在“密码”和“确认密码”中键入该用户帐户的密码,然后单击“确定”。如果您选择本地服务帐户或网络服务帐户,则不要键入密码。

win7服务里面的networklistservice启动不了

1.运行输出dcomcnfg

2.组件服务-计算机-我的电脑-DCOM配置-netprofm

3.右键属性-安全-启动和激活权限-自定义

4.编辑-添加-输入对象名称来选择-输入“LOCALSERVICE”-确定

5.返回之后,注意勾选下面的本地启动和本地激活(注意,默认是没有选择的)

6.选择LOCALSERVICE应用,确定

7.组件服务-服务-NetworkListService-右键启用!