0

有谁知道如何在 Delphi 中从 TAndroidService 获取服务 ObjectID(JNI 对象)或 JService?

非常感谢您的建议和回答。

4

1 回答 1

1

TAndroidService继承自TAndroidBaseService,它有一个名为JavaServicetype的属性JService。所以像:

uses
  Androidapi.JNI.App;
...
var
  ServiceIntf: JService;
...
ServiceIntf := MyService.JavaService;

如果您想要 JNI 对象,请尝试强制转换JavaServiceILocalObject并调用该GetObjectID方法:

uses
  Androidapi.Jni;
...
var
  ServiceObjectID: JNIObject;
...
ServiceObjectID := (ServiceIntf as ILocalObject).GetObjectID; // gets the JNI ObjectID
于 2016-09-15T23:02:56.497 回答