2
我見過here和here,你不能重寫android的本地方法,但我想知道如果我可以有一個類聲明一些本地方法,然後擴展它與另一個類聲明一些額外的類本地方法。android擴展類與本地方法
我的情況是這樣的:
public class A{
public native int aMethod();
}
public class B extends A{
public native int bMethod();
static {
try{
System.loadLibrary("MyNativeLibraryWithBothaMethodAndbMethod");
}
catch (java.lang.UnsatisfiedLinkError e){
System.out.println (e);
}
}
}
public class MyActivity extends Activity {
private B bClass;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
bClass = new B();
bClass.aMethod();//Working fine
bClass.bMethod();//UnsatisfiedLinkError
}
}
圖書館是沒有問題的加載,第一個方法被調用,而不是第二。
如果我將bMethod從B移動到A,一切正常。
將System.loadlibrary()從B移動到A似乎沒有效果。
是否可以使用其他本地方法擴展A類?