能力值:
( LV3,RANK:30 )
|
-
-
2 楼
extern "C" void _init(void) {}
|
能力值:
( LV3,RANK:30 )
|
-
-
3 楼
__attribute__((constructor))
void on_load(void) {
Dl_info dl_info;
dladdr((void *)on_load, &dl_info);
char fullpath[PATH_MAX];
realpath(dl_info.dli_fname, fullpath);
fprintf(stderr, "module %s (%s) loaded\n", dl_info.dli_fname, fullpath);
}
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这个是load的方法,直接放到ndk中编译出错啊??就只需要定义一个_init段,不需要有内容,只要在elf的dynamic里面显示出来init的定义就好了
|
能力值:
( LV3,RANK:30 )
|
-
-
5 楼
和load没啥关系,只是函数名字叫这个而已。或者你写个带构造函数的全局对象就行。
|
能力值:
( LV3,RANK:30 )
|
-
-
6 楼
构造函数是在init_array里面。他说的是init
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
这个Init该怎么初始化??
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
找到解决办法了。。。在native里定义
__attribute__((constructor))
void _init(void) {
}
就会初始化init字段
|
能力值:
( LV3,RANK:30 )
|
-
-
9 楼
之前就已经留言告诉了。。不用__attribute__((constructor))都可以自动生成的
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
extern "C" void _init(void)--》init
__attribute__((constructor)) --》init_array
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
不用的话在dynamic字段里面初始化不了init的
|
能力值:
( LV3,RANK:30 )
|
-
-
12 楼
答案都告诉你了。你自己试试不就知道了
|
|
|