小编Joe*_*eyG的帖子

用于getRunningServices的Android O替换

在以前的Android版本中,我使用此方法查找来自其他应用程序的服务是否已启动并正在运行.它对我来说可靠:

ActivityManager manager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
List<RunningServiceInfo> services = manager.getRunningServices(Integer.MAX_VALUE);
Run Code Online (Sandbox Code Playgroud)

但是,对于Android O,现在不推荐使用此功能,只会返回有关调用应用服务的信息.我已经研究过其他解决方案,但我不想要求用户提供更多权限(UsageStatsManager,NotificationManager等).

是否有另一种解决方案可以获取Android O中是否有来自其他应用的服务正在运行?

android android-service

24
推荐指数
1
解决办法
2755
查看次数

关闭Java或类似的东西

我一直在努力找到一种方法,在Java 1.6中开发类似于Closure的东西,因为我正在为Android开发.

我想要的(在完美的世界中)我有一个课程,我们称之为"项目".

然后我有一个这样的arrayList.

ArrayList<Item> items = new ArrayList<item>;
Run Code Online (Sandbox Code Playgroud)

在每个items.get(x)中我想保存一个在调用时将执行的代码块.这段代码需要在容纳ArrayList项的类的范围内进行.

我唯一的半脑子想法是在类中创建容纳"items"的方法,并在每个"item"实例中保存函数的名称,然后使用reflection来调用这些方法....

我很怀疑这是可能的,但这是我会找到答案的地方.

提前感谢您的帮助.

java reflection android closures anonymous-class

3
推荐指数
1
解决办法
5329
查看次数