Domanda

sto usando JNA per chiamare le API Carbon. La particolare chiamata API che voglio chiamare prende un CFBooleanRef come parametro. I valori, kCFBooleanTrue e kCFBooleanFalse, sono dichiarato come riferimenti extern diretti nei file di intestazione.

Come posso ottenere i riferimenti a questi due valori sul lato Java, in modo che possa passare i valori alla chiamata API?

È stato utile?

Soluzione

Bene, in quanto questo non ha ottenuto alcuna risposta, solo mettendo giù la soluzione mi è venuta, nel caso qualcuno altro ha bisogno di fare questo:

Ho finito per usare Rococoa per implementare la mia versione di NSNumber, in modo da poter chiamare il metodo numberWithBool in essa, per ottenere un'istanza di un NSBoolean. Che possono poi essere utilizzato come 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);
    }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top