I'm trying to run the Android example found in 
BridJ/Examples/AndroidExample. I am able to get dependencies resolved after 
downloading BridJ and using maven to build it successfully. I place the 
generated bridj-0.7.1-SNAPSHOT-andorid.jar in app/libs, and I place 
everything under BridJ/src/main/android-libs in app/src/main/jniLibs. I 
copy the files in BridJ/Examples/AndroidExample/ to my Android project. All 
of the BridJ dependences are resolved at compile time.


The problem is that MainActivity won't compile. The error on 

public static void helloLog(Pointer<Byte> logThis);

says "Missing method body, or declare abstract". I haven't added or removed 
anything from MainActivity.java, but FWIW I pasted the source for that 
below. Any ideas?


package yada.yada.yada;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

import java.io.IOException;

import org.bridj.BridJ;
import org.bridj.NativeLibrary;
import org.bridj.Pointer;
import org.bridj.ann.Library;
import org.bridj.demangling.Demangler.Symbol;

import static org.bridj.Pointer.pointerToCString;

public class MainActivity extends Activity {

    static final String TAG = MainActivity.class.getName();

    @Library("example")
    public static void helloLog(Pointer<Byte> logThis);

    static {
        BridJ.register();
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        helloLog(pointerToCString("Hello, World!"));
        try {
            NativeLibrary lib = BridJ.getNativeLibrary("example");
            for (Symbol s : lib.getSymbols()) {
                String p = s.getParsedRef() + "";
                System.out.println(p);
            }
        } catch (IOException e) {
            throw new RuntimeException("BridJ loading failed?", e);
        }
        setContentView(R.layout.activity_main);
    }
}



-- 
You received this message because you are subscribed to the Google Groups 
"NativeLibs4Java" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to