---------------------------------------华丽的分割线-----------------------------------------

现象“.c”后缀名改为“.cpp”时java调用native失败

解决加入“ extern "C" ”。

现象“error: base operand of '->' has non-pointer type '_JNIEnv'”错误。

解决将“(*env)->NewStringUTF(env, "HelloWorld from JNI !");”改为env->NewStringUTF("HelloWorld from JNI !")”。

例子:

#include <stdio.h>#include <string.h>#include <android/log.h>#include <jni.h>#ifdef __cplusplusextern "C"{#endifjint Java_com_duicky_MainActivity_add(JNIEnv* env, jobject thiz, jint x, jint y){//该方法为打印的方法__android_log_print(ANDROID_LOG_INFO, "JNIMsg", "Get Param:  x=%d y=%d ", x, y);int iRet = x + y;return iRet;}jstring Java_com_duicky_MainActivity_getString(JNIEnv* env, jobject thiz){jstring strRet = env->NewStringUTF("HelloWorld from JNI !");return strRet;}#ifdef __cplusplus}#endif

更多相关文章

  1. Android(安卓)HashMap源码解析
  2. 【android】的startActivityForResult
  3. android状态机机制StateMachine
  4. android 横竖屏切换与数据保存
  5. ButterKnife基本使用
  6. android的事物
  7. Dockerfile中使用sdkmanager安装Android(安卓)SDK自动接受licens
  8. android自定义viewGroup常用方法
  9. 8.Swift openURL

随机推荐

  1. Android(安卓)CountDownTimer的使用
  2. android java开发 第一天 之熟悉eclipse
  3. Android5大布局方式
  4. RecyclerView设置addItemDecoration在Fra
  5. Android(安卓)WakeLock
  6. 全屏与非全屏动态切换的正确方式
  7. 使用命令行在手机上运行android单元测试
  8. 安卓开发环境安装
  9. Ubuntu11.04 Android编译时遇到 cannot f
  10. Android--permission大全