local service,安卓里remote service到底有什么用
安卓里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-右键启用!