Titanium Hyperloop 访问 android.os.SystemProperties
Titanium Hyperloop access to android.os.SystemProperties
我一直在钛项目中直接尝试(我希望)简单的 Android 超级循环代码(使用 SDK 7.0。1.GA 和超级循环 3)。
var sysProp = require('android.os.SystemProperties');
var serialNumber = sysProp.get("sys.serialnumber", "none");
但是当应用程序 运行 它报告
Requested module not found:android.os.SystemProperties
我认为这可能是因为在编译应用程序(使用 cli)时报告
hyperloop:generateSources: Skipping Hyperloop wrapper generation, no usage found ...
我在一个 jar 中有类似的代码,如果我使用它,它就可以工作,所以我想知道为什么没有触发 hyperloop 生成,因为我认为这是问题所在。
抱歉,应该解释得更好。
这是我使用的jar source,序列号的提取只是一个例子(我还需要访问其他信息制造商的特定数据),我想看看我是否可以复制JAR 功能仅使用 hyperloop 而不是包括 JAR 文件。猜猜它没坏就不要修理它,但很好奇是否可以完成。
因为android.os.SystemProperties
不是class可以导入的。在 https://developer.android.com/reference/android/os/package-summary.html
查看 android 文档
你可以使用
var build = require('android.os.Build');
console.log(build.SERIAL);
访问序列号。
因此,根据@miga 的反馈和一些反复试验,我提出了一个非常有效的解决方案,并将执行所需的方法反射。我的新 Hyperloop 功能是
function getData(data){
var result = false;
var Class = require("java.lang.Class");
var String = require("java.lang.String");
var c = Class.forName("android.os.SystemProperties");
var get = c.getMethod("get", String.class, String.class);
result = get.invoke(c, data, "Error");
return result;
}
其中data是系统的字符串属性我要
我正在使用它从三星设备中提取和匹配序列号,该设备是系统 属性 调用 "ril.serialnumber" 或 "sys.serialnumber"。现在我可以使用上面的函数来完成我使用 JAR 文件的目的。只是想我会分享以防其他人需要类似的东西。
我一直在钛项目中直接尝试(我希望)简单的 Android 超级循环代码(使用 SDK 7.0。1.GA 和超级循环 3)。
var sysProp = require('android.os.SystemProperties');
var serialNumber = sysProp.get("sys.serialnumber", "none");
但是当应用程序 运行 它报告
Requested module not found:android.os.SystemProperties
我认为这可能是因为在编译应用程序(使用 cli)时报告
hyperloop:generateSources: Skipping Hyperloop wrapper generation, no usage found ...
我在一个 jar 中有类似的代码,如果我使用它,它就可以工作,所以我想知道为什么没有触发 hyperloop 生成,因为我认为这是问题所在。
抱歉,应该解释得更好。
这是我使用的jar source,序列号的提取只是一个例子(我还需要访问其他信息制造商的特定数据),我想看看我是否可以复制JAR 功能仅使用 hyperloop 而不是包括 JAR 文件。猜猜它没坏就不要修理它,但很好奇是否可以完成。
因为android.os.SystemProperties
不是class可以导入的。在 https://developer.android.com/reference/android/os/package-summary.html
你可以使用
var build = require('android.os.Build');
console.log(build.SERIAL);
访问序列号。
因此,根据@miga 的反馈和一些反复试验,我提出了一个非常有效的解决方案,并将执行所需的方法反射。我的新 Hyperloop 功能是
function getData(data){
var result = false;
var Class = require("java.lang.Class");
var String = require("java.lang.String");
var c = Class.forName("android.os.SystemProperties");
var get = c.getMethod("get", String.class, String.class);
result = get.invoke(c, data, "Error");
return result;
}
其中data是系统的字符串属性我要
我正在使用它从三星设备中提取和匹配序列号,该设备是系统 属性 调用 "ril.serialnumber" 或 "sys.serialnumber"。现在我可以使用上面的函数来完成我使用 JAR 文件的目的。只是想我会分享以防其他人需要类似的东西。