【问题标题】:How to get the list of running applications from LuaJ?如何从 LuaJ 获取正在运行的应用程序列表?
【发布时间】:2019-06-28 05:29:06
【问题描述】:

我正在开发一个需要运行外部 LuaJ 解释器的应用程序,以获取系统上运行的应用程序的信息。 我在 Java 中找到了 there 的代码,但在 LuaJ 上没有。

这是我的尝试。

local pm = activity:getPackageManager()
local packages = pm:getInstalledApplications(activity.GET_META_DATA)
local size = packages:size()

for i=0,size-1 do
    packageInfo = packages:get(i)
    if not packageInfo:equals(flags) and not packageInfo:equals(FLAG_SYSTEM) and not packageInfo:equals(FLAG_STOPPED) then
       print(packageInfo.packageName)
    end
end

但是“equals(...)”有问题。 请帮忙)

【问题讨论】:

    标签: luajava


    【解决方案1】:

    这是对我自己的回答。

        local pm = activity:getPackageManager()
        local packages = pm:getInstalledApplications(activity.GET_META_DATA)
        local size = packages:size()
    
        local packageInfo, packageName, ai, str
    
        for i=0,size-1 do
            packageInfo = packages:get(i)
            packageName = packageInfo.packageName
            ai = pm:getApplicationInfo(packageName)
            if ai and string.find(packageInfo.sourceDir, "^/data/app/") and pm:getLaunchIntentForPackage(packageName) then --nonSystem app
                print(pm:getApplicationLabel(ai))
            end
        end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多