问题标签 [system-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
623 浏览

android - 系统服务在 onCreate() 之前对活动不可用,但没有实例化属性

我正在尝试创建一个服务来检查设备是否有活动的互联网连接并报告它。我完全不知道我的代码有什么问题。

我知道这个问题已经被问过很多次了,但是大多数答案,像这样,状态

  • 无法使用new关键字创建活动(请参阅这篇文章);
  • 被实例化的属性也是问题的原因(参见这篇文章)。

现在据我所知,我避免了上述原因。这是我的简化代码:

  • 我的活动

    /li>
  • 超级活动

    /li>
  • 应用程序管理器

    /li>
  • 用户界面管理器

    /li>
  • 连接服务

    /li>

错误发生在由 SECOND MARKER 表示的行上,该行获取系统连接服务并检查 wifi。这是之前不允许调用的服务onCreate()

此外,如果我删除或注释 FIRST MARKER 表示的行,错误就消失了,当然,服务也没有启动。

可能是什么问题呢?

0 投票
1 回答
2634 浏览

android - 如何以编程方式关闭通知托盘

我想分享 G​​CM 通知项。共享按钮响应点击事件并且项目也被共享。这里唯一的问题是,通知托盘下方存在意图选择器对话框。用户必须手动关闭状态栏,然后选择要共享的应用程序。我想以编程方式关闭状态栏,这样当用户单击共享时,它会直接向他显示选择应用程序的对话框。

我发现该status bar服务可用于打开/关闭服务。但它仅限于系统应用程序。

我使用了上面的代码。但我收到“STATUS_BAR_SERVICE 无法解决”错误。当我在清单中添加以下权限时:

我得到了,只允许系统应用程序。它不允许我在我的应用程序中使用。有没有办法使用status bar服务或任何其他替代方案?

更新:

我只用两行代码解决了上述问题。无需调用 STATUS_BAR_SERVICE。

调用此意图将自动关闭通知

0 投票
1 回答
5545 浏览

macos - 如何获取所有已安装 OS X 系统服务的列表?

我正在为 OS X 编写一个 Automator 插件,它可以让您调用任何系统服务。

我喜欢向用户提供所有可用服务的完整列表,这样他就不必手动输入他们的名字。

是否有让我获得所有服务的 API 函数?毕竟 OS X 可以在菜单中列出服务,那么它是如何得到这个列表的呢?

澄清。我的意思是这些服务:

Finder 中的服务

0 投票
1 回答
417 浏览

android - 阻止来电与系统服务

我写了一个应用程序,它可以在接到电话时挂断电话。为此,我正在使用电话管理器,并且需要此权限:android.permission.MODIFY_PHONE_STATE

但是,此权限使我的应用程序成为系统应用程序,因此我以后无法将其放置在 Play 商店中。但是我在 Play 商店中看到了成功阻止来电的应用程序(例如“呼叫黑名单”)。我想知道,有谁知道这些应用程序使用什么 API 来阻止来电并允许这些应用程序出现在 Play 商店中?

谢谢。

0 投票
1 回答
2101 浏览

android - 在模拟器上安装 Android System-App 不起作用

我有一个系统应用程序,它能够执行一些系统级任务(例如:远程重启等)。我想在 Android-Dev-Studio Emulator 中尝试一下。

我已经用谷歌搜索了它,这是我迄今为止发现的:

构建.apk

  • adb 重新挂载
  • adb push [MyApp.apk] /system/app/ (这是API 级别 19+ 中的/system/priv-app )
  • adb shell chmod 644 /system/app/[MyApp.apk]
  • 亚行重启

我已经完成了这一切。我尝试将我的 apk 复制到文件夹“/system/app/”和“/system/priv-app/”文件夹中。无论如何,当我重新启动模拟器时不会显示任何内容并卡住。

根据这个问题,重启不适用于模拟器,我也注意到这是正确的,因为复制的 .apk 文件在重启时丢失。

我在这里想念什么?

我正在为 SDKVersion - 21 编译和构建。那么我应该将我的系统应用程序复制到哪个文件夹?(/system/app/ 或 /system/priv-app)?

此外,如果重新启动不适用于模拟器,我如何安装并运行该应用程序?

0 投票
0 回答
96 浏览

c++ - 使用 WinAPI/C++ 作为系统服务运行时打开监视器?

我的应用程序(作为系统服务运行)具有显示出于某种原因“闪烁”几次的功能。这是通过允许访问背光控制的特殊 API 完成的。到目前为止,这有效。但是当显示器因为电源选项中的“关闭显示器”设置而关闭时,似乎没有任何事情发生(从用户视图)。

寻找解决方案总是以使用SendMessage、SendNotifyMessage 或 SetThreadExectionState的建议告终。从系统服务调用这些函数不起作用(至少在 Windows Vista 和更高版本中)。

我很确定有一些方法可以打开显示,即使因为没有用户登录而在用户的上下文中没有机会这样做。但是,我不知道该怎么做。我希望你能帮助我。

PS:我在用户模式下尝试了一个(帮助)应用程序,即使工作站被锁定(Win + L)也可以看到它可以工作。剩下的唯一问题是,当作为服务运行并且没有用户登录时,我无法打开显示器。

0 投票
2 回答
1347 浏览

java - java.lang.IllegalStateException:系统服务在 onCreate() 之前对活动不可用尝试将用户位置存储为变量时

我为我最后一年的项目创建了一个距离计算器。计算器应显示用户当前位置,然后按下时在地图上显示一个标记。将显示从用户当前位置到标记的距离。

我已经检索了用户位置并将其存储为我在代码中使用的变量,但我得到了java.lang.IllegalStateException: System services not available to Activities before onCreate()错误。我尝试从一开始就将我的代码放在onCreate()方法中,但这也不起作用。任何帮助将不胜感激。我已经尝试了几个小时让它工作,但没有运气。当我尝试将其放入其中(LocationManager)getSystemService(Context.LOCATION_SERVICE);时,onCreate()它需要获得许可,并且我已经尝试了所有方法。

这是我的代码

抛出的错误

0 投票
3 回答
1937 浏览

android - 系统服务在可扩展列表视图中的 onCreate() 之前对活动不可用

在我的应用程序SearchView中,单击它会打开一个ExpandableListView内部Fragment,显示搜索查询的一些结果。现在我遇到的问题是每次单击 searchIcon 应用程序都会崩溃。

MainActivity.Java:

ExpListAdapter.Java:

分段:

我在 getGroupView() 方法上收到错误“java.lang.IllegalStateException:系统服务在 onCreate() 之前对活动不可用”。但如果我没有弄错的话,我已经调用了我的 MainActivity 的 onCreate。那么为什么会出现这个错误呢?

致命异常:主进程:formelhelfer5_10.formelhelfer5_10,PID:2301 java.lang.IllegalStateException:系统服务在 formelhelfer5_10.formelhelfer5_10.ExpListAdapter 的 android.app.Activity.getSystemService(Activity.java:5581) 的 onCreate() 之前对活动不可用.getGroupView(ExpListAdapter.java:86) 在 android.widget.ExpandableListConnector.getView(ExpandableListConnector.java:446) 在 android.widget.AbsListView.obtainView(AbsListView.java:2360) 在 android.widget.ListView.measureHeightOfChildren(ListView.java:1326) 在 android.widget.ListView.onMeasure(ListView.java:1233) 在 android。 view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.widget。LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 在 android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 在 android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 在 android.view.View.measure(View .java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 在 android.widget.RelativeLayout.measureChildHorizo​​ntal(RelativeLayout.java:715) 在 android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461) 在 android.view.View.measure(View.java:19731)。 android.support 上的 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 上的 view.View.measure(View.java:19731)。design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:668) at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90) at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout. java:1192) 在 android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:733) 在 android.view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135) 在 android.widget.FrameLayout.onMeasure(FrameLayout.java:185) ) 在 android.view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 在 android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 在 android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 在 android。 view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.widget.FrameLayout.onMeasure(FrameLayout.java:185) 在 android。 widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464) 在 android.widget.LinearLayout.measureVertical(LinearLayout.java:758) 在 android.view.View.measure(View.java:19731) 在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6120) 在 android.widget.LinearLayout.onMeasure(LinearLayout.java:640) 在 android。 widget.FrameLayout.onMeasure(FrameLayout.java:185) 在 com.android.internal.policy.DecorView.onMeasure(DecorView.java:687) 在 android.view。View.measure(View.java:19731) 在 android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2271) 在 android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1358) 在 android.view.ViewRootImpl.performTraversals(ViewRootImpl .java:1607) 在 android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1246) 在 android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6301) 在 android.view.Choreographer$CallbackRecord.run(Choreographer.java:871) 在 android.view.Choreographer.doCallbacks(Choreographer.java:683) 在 android.view.Choreographer.doFrame(Choreographer.java:619) 在android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:857) 在 android.os.Handler.handleCallback(Handler.java:751) 09-06 13:13:20.688 2301-2301/formelhelfer5_10。formelhelfer5_10 E/AndroidRuntime: 在 android.os.Handler.dispatchMessage(Handler.java:95) 在 android.os.Looper.loop(Looper.java:154) 在 android.app.ActivityThread.main(ActivityThread.java:6077)在 java.lang.reflect.Method.invoke(Native Method) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.爪哇:755)dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6077) at java.lang.reflect.Method.invoke(Native方法)在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6077) at java.lang.reflect.Method.invoke(Native方法)在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)95) 在 android.os.Looper.loop(Looper.java:154) 在 android.app.ActivityThread.main(ActivityThread.java:6077) 在 java.lang.reflect.Method.invoke(Native Method) 在 com.android .internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)95) 在 android.os.Looper.loop(Looper.java:154) 在 android.app.ActivityThread.main(ActivityThread.java:6077) 在 java.lang.reflect.Method.invoke(Native Method) 在 com.android .internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)154) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:第865章)154) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:第865章)在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 调用(本机方法)在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) 调用(本机方法)

0 投票
3 回答
14051 浏览

linux - Systemd Zookeeper 服务失败

我创建了以下 systemd 服务脚本,用于使用 Ansible 运行 Zookeeper:

但是,在尝试使用运行脚本时sudo service zookeeper start,出现以下错误:

由于我对系统服务很陌生,为什么我无法正确启动 Zookeeper 的任何提示?

0 投票
2 回答
12919 浏览

android - 如何从 Android 中的 ServiceManager 获取服务?

我怀疑 ServiceManager 注册的服务而不是 SystemServiceRegistry 注册的服务。

SystemServiceRegistry的评论中

这意味着 System 注册的服务可以从 Context 中获取他的引用。

关于ServiceManager,如何访问 ServiceManager 在未由 SystemServiceRegistry 注册的应用程序中添加的服务?