Вопрос

Я использую JNA для вызова Carbon API.Конкретный вызов API, который я хочу вызвать, принимает CFBooleanRef в качестве параметра.Значения kCFBooleanTrue и kCFBooleanFalse являются объявленными как прямые внешние ссылки в файлах заголовков.

Как я могу получить ссылки на эти два значения на стороне Java, чтобы я мог передавать значения в вызов API ?

Это было полезно?

Решение

Что ж, поскольку на это не было получено никакого ответа, просто записываю решение, которое я придумал, на случай, если кому-то еще понадобится это сделать:

В итоге я использовал Rococoa для реализации моей собственной версии NSNumber, чтобы я мог вызвать в ней метод numberWithBool, чтобы получить экземпляр NSBoolean .Который затем может быть использован в качестве CFBoolean.

public interface MyNSNumber extends NSObject {
    public static final _Class CLASS = Rococoa.createClass("NSNumber", _Class.class);

    public interface _Class extends NSClass {
        ID numberWithBool(boolean value);
    }
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top