zoukankan      html  css  js  c++  java
  • cocos2dx 之 android java 与 c++ 互相调用 代码(以百度定位为例子)

    在作cocosdx项目移植到android上时,预见各种头痛问题,今天首先就说说如何在 java 中调用c++ 代码。

    这里就用百度定位为例吧,也是我项目中的一小块内容。首先,先百度一下 “百度定位sdk”的相关内容,

    根据 百度定位SDK 中的提示在java 代码中加入api,本篇就用 Location.java和

    MHGPSTools.cpp 俩个类之间进行互相调用。

    首先 在Location.java 中 定义需要c++ 中调用的方法:

    而在MHGPSTools.cpp中

    注意上面代码中蓝色着重的方法名,此外该方法所带的参数,我们只需要注意后面两位,次参数的个数依据我们

    在Location.java中的定义而决定,最后记住得释放 info,temp info2,temp2,写好以上方法后,在java代码调用

    c++ 代码如下:

    SendLocationGPS(String.valueOf(location.getLatitude()),String.valueOf(location.getLongitude())); //BDLocation location 

     

    接着我们在说说才c++ 中调用 java,同样是Location.java和MHGPSTools.cpp两个类,在.cpp中添加头文件

    #include<jni.h>、#include"platform/android/jni/JniHelper.h" 然后接着定义方法StarUpdatePosition()

    用来调用java 代码,如下:

    在.java中 定义静态方法 public static void SendStartLocationGPSReq() 保持命名一致,这样就可以在c++ 中调用 StarUpdatePositio()

    来实现调用.java 中SendStartLocationGPSReq() 方法。

  • 相关阅读:
    zoj3299 Fall the Brick
    hdu4533 威威猫系列故事——晒被子
    FZU 1650 1752 a^b mod c
    Codeforces Round #136 (Div. 1) B. Little Elephant and Array
    Codeforces Round #292 (Div. 1) C. Drazil and Park
    Uva 12436 Rip Van Winkle's Code
    Codeforces Beta Round #19 D. Points
    hdu1513 Palindrome
    poj1160 Post Office
    zjnu1181 石子合并【基础算法・动态规划】——高级
  • 原文地址:https://www.cnblogs.com/lh92lxm/p/3645320.html
Copyright © 2011-2022 走看看