本文整理汇总了C++中registerNatives函数的典型用法代码示例。如果您正苦于以下问题:C++ registerNatives函数的具体用法?C++ registerNatives怎么用?C++ registerNatives使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了registerNatives函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: JNI_OnLoad
Q_BLUETOOTH_EXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* /*reserved*/)
{
typedef union {
JNIEnv *nativeEnvironment;
void *venv;
} UnionJNIEnvToVoid;
UnionJNIEnvToVoid uenv;
uenv.venv = 0;
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK) {
__android_log_print(ANDROID_LOG_FATAL, logTag, "GetEnv failed");
return -1;
}
JNIEnv *env = uenv.nativeEnvironment;
if (!registerNatives(env)) {
__android_log_print(ANDROID_LOG_FATAL, logTag, "registerNatives failed");
return -1;
}
if (QT_BT_ANDROID().isDebugEnabled())
__android_log_print(ANDROID_LOG_INFO, logTag, "Bluetooth start");
return JNI_VERSION_1_4;
}
示例2: setupGateway
/**
* This sets up the 'Gateway' java class for execution of
* scripts. The class's constructor takes a jlong. This java long
* is used to store the pointer to 'this'. When ScriptRunner makes
* native calls, it passes that jlong back, so that it can call the
* methods of this C++ class.
*/
bool JavaBinderyImpl::setupGateway()
{
String className = "org/inkscape/cmn/Gateway";
if (!registerNatives(className, gatewayMethods))
{
return false;
}
jclass cls = env->FindClass(className.c_str());
if (!cls)
{
err("setupGateway: cannot find class '%s' : %s",
className.c_str(), getException().c_str());
return false;
}
jmethodID mid = env->GetMethodID(cls, "<init>", "(J)V");
if (!mid)
{
err("setupGateway: cannot find constructor for '%s' : %s",
className.c_str(), getException().c_str());
return false;
}
gatewayObj = env->NewObject(cls, mid, ((jlong)this));
if (!gatewayObj)
{
err("setupGateway: cannot construct '%s' : %s",
className.c_str(), getException().c_str());
return false;
}
msg("Gateway ready");
return true;
}
示例3: CountableOnLoad
void CountableOnLoad(JNIEnv* env) {
jclass countable = env->FindClass("com/facebook/jni/Countable");
gCountableNativePtr = env->GetFieldID(countable, "mInstance", "J");
registerNatives(env, countable, {
{ "dispose", "()V", (void*) dispose },
});
}
示例4: __attribute__
/*
* Set some test stuff up.
*
* Returns the JNI version on success, -1 on failure.
*/
__attribute__ ((visibility("default"))) jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
JNIEnv* env = NULL;
jint result = -1;
if ((*vm)->GetEnv(vm, (void**) &env, JNI_VERSION_1_4) != JNI_OK)
{
LOGE("ERROR: GetEnv failed");
goto bail;
}
assert(env != NULL);
LOGD("In main JNI_OnLoad");
if (registerNatives(env) < 0)
{
LOGE("ERROR: Exif native registration failed");
goto bail;
}
/* success -- return valid version number */
result = JNI_VERSION_1_4;
bail: return result;
}
示例5: JNI_OnLoad
jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
JNIEnv* env = NULL;
jint result = -1;
LOGE("OnLoad");
if (vm->GetEnv((void**)&env, JNI_VERSION_1_4) != JNI_OK) {
goto bail;
}
if (!registerNatives(env,
"com/ti/jfm/core/JFmRx",
JFmRxNative_sMethods,
NELEM(JFmRxNative_sMethods))) {
goto bail;
}
env->GetJavaVM(&g_jVM);
/* success -- return valid version number */
result = JNI_VERSION_1_4;
bail:
return result;
}
示例6: JNI_OnLoad
Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* /*reserved*/)
{
__android_log_print(ANDROID_LOG_INFO,"Qt", "qt start");
UnionJNIEnvToVoid uenv;
uenv.venv = NULL;
m_javaVM = 0;
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK)
{
__android_log_print(ANDROID_LOG_FATAL,"Qt","GetEnv failed");
return -1;
}
m_env = uenv.nativeEnvironment;
if (!registerNatives(m_env))
{
__android_log_print(ANDROID_LOG_FATAL, "Qt", "registerNatives failed");
return -1;
}
if (!saveCustomClass(m_env, customClass))
{
__android_log_print(ANDROID_LOG_FATAL, "Qt", "Custom registerNatives failed");
return -1;
}
m_javaVM = vm;
return JNI_VERSION_1_4;
}
示例7: JNI_OnLoad
Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void * /*reserved*/)
{
static bool initialized = false;
if (initialized)
return JNI_VERSION_1_6;
initialized = true;
typedef union {
JNIEnv *nativeEnvironment;
void *venv;
} UnionJNIEnvToVoid;
__android_log_print(ANDROID_LOG_INFO, logTag, "Sensors start");
UnionJNIEnvToVoid uenv;
uenv.venv = NULL;
javaVM = 0;
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK) {
__android_log_print(ANDROID_LOG_FATAL, logTag, "GetEnv failed");
return -1;
}
JNIEnv *env = uenv.nativeEnvironment;
if (!registerNatives(env)) {
__android_log_print(ANDROID_LOG_FATAL, logTag, "registerNatives failed");
return -1;
}
javaVM = vm;
return JNI_VERSION_1_4;
}
示例8: JNI_OnLoad
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved)
{
// JNIEnv* env = NULL;
// jint result = -1;
//
// if (vm->GetEnv( (void**) &env, JNI_VERSION_1_1) != JNI_OK) {
// __android_log_print(ANDROID_LOG_ERROR, "tag", "load library error 1");
// return JNI_ERR;
// }
// assert(env != NULL);
//
// if (!registerNatives(env)) {
// ALOG(ANDROID_LOG_ERROR, "tag", "load library error 2");
// return JNI_ERR;
// }
// result = JNI_VERSION_1_1;
// ALOG(ANDROID_LOG_ERROR, "tag", "load library success: %d", result);
// return result;
JNIEnv* env = NULL;
jint result = -1;
if (vm->GetEnv((void**) &env, JNI_VERSION_1_4) != JNI_OK) {//从VM中取得JNIEnv的指针
ALOG(ANDROID_LOG_ERROR, "tag","ERROR: GetEnv failed\n");
return JNI_ERR;
}
assert(env != NULL);
if (!registerNatives(env)) {//调用动态注册的方法
ALOG(ANDROID_LOG_ERROR, "tag","ERROR: MediaPlayer native registration failed\n");
return JNI_ERR;
}
result = JNI_VERSION_1_4;
ALOG(ANDROID_LOG_ERROR, "tag", "load library success: %d", result);
return result;
}
示例9: JNI_OnLoad
Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void * /*reserved*/)
{
typedef union {
JNIEnv *nativeEnvironment;
void *venv;
} UnionJNIEnvToVoid;
LOG_MODEL_DEBUG("CAndroidNotification", "JNI_OnLoad start");
UnionJNIEnvToVoid uenv;
uenv.venv = NULL;
javaVM = 0;
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK) {
LOG_MODEL_ERROR("CAndroidNotification", "GetEnv failed");
return -1;
}
JNIEnv *env = uenv.nativeEnvironment;
if (!registerNatives(env)) {
LOG_MODEL_ERROR("CAndroidNotification", "registerNatives failed");
return -1;
}
javaVM = vm;
return JNI_VERSION_1_4;
}
示例10: JNI_OnLoad
/*
* Set some test stuff up.
*
* Returns the JNI version on success, -1 on failure.
*/
jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
UnionJNIEnvToVoid uenv;
uenv.venv = NULL;
jint result = -1;
JNIEnv* env = NULL;
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK) {
fprintf(stderr, "ERROR: GetEnv failed\n");
goto bail;
}
env = uenv.env;
assert(env != NULL);
printf("In mgmain JNI_OnLoad\n");
if (!registerNatives(env)) {
fprintf(stderr, "ERROR: SEHome native registration failed\n");
goto bail;
}
register_com_android_se_SECamera(env);
register_com_android_se_SEObject(env);
register_com_android_se_scene(env);
register_com_android_se_SEParticleSystem(env);
register_com_android_se_XMLAnimation(env);
// register_com_android_se_uiManager(env);
/* success -- return valid version number */
result = JNI_VERSION_1_4;
bail:
return result;
}
示例11: JNI_OnLoad
jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
UnionJNIEnvToVoid uenv;
uenv.venv = NULL;
jint result = -1;
JNIEnv* env = NULL;
LOGI("JNI_OnLoad");
if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_4) != JNI_OK) {
LOGE("ERROR: GetEnv failed");
goto bail;
}
env = uenv.env;
if (registerNatives(env) != JNI_TRUE) {
LOGE("ERROR: registerNatives failed");
goto bail;
}
result = JNI_VERSION_1_4;
bail:
return result;
}
示例12: initAMXGM
void CNetwork::initAMXGM( void ) {
if(registerNatives(gamemode_Natives)) {
ExecMain();
OnGameModeInit(); //Everything is loaded, init our gamemode..
mainHooks();
RestartMap();
}
}
示例13: JNI_OnLoad
/*
* Set some test stuff up.
*
* Returns the JNI version on success, -1 on failure.
*/
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved) {
if (vm->GetEnv((void**) &gEnv, JNI_VERSION_1_4) != JNI_OK) {
return -1;
}
if (!registerNatives(gEnv)) {
return -1;
}
return JNI_VERSION_1_4;
}
示例14: JNI_OnLoad
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved)
{
JNIEnv *vm_env;
if (!vm->GetEnv((void **) &vm_env, JNI_VERSION_1_4))
env = new JCCEnv(vm, vm_env);
registerNatives(vm_env);
return JNI_VERSION_1_4;
}
示例15: JNI_OnLoad
jint JNI_OnLoad(JavaVM* vm, void* reserved) {
jint result = -1;
JNIEnv* env = NULL;
if ((*vm)->GetEnv(vm, (void **) &env, JNI_VERSION_1_4)) {
goto fail;
}
if (registerNatives(env) != JNI_TRUE) {
goto fail;
}
result = JNI_VERSION_1_4;
fail: return result;
}