cocos creator 调用原生端方法
最近在做项目的时候。遇到的一些额外的功能比如调用安卓或者ios的相册照相机之类的。空闲下来,就做个随手记吧
1.js 调用oc方法
jsb.reflection.callStaticMethod("BaiDuMap","openorcloseMap:","json");
调用这句话之前,加上一句话来判断平台,不然在浏览器会报jsb未定义的错误
参数说明:第一个参数是类名,第二个是方法名,这里方法名有个需要注意的一方,就是是否携带参数,携带几个参数
<pre name="code" class="javascript">+(void)openorcloseMap : (NSString*)lis{}
这里是携带一个参数,所以<span style="font-family: Arial, Helvetica, sans-serif;">openorcloseMap: 方法名后面多一个冒号,传递参数,如果没有参数就不需要冒号,但是如果两个参数</span>
openorcloseMap : (NSString*)lis Two:(NSString*)str{}方法名就需要这样-- openorcloseMap:Two:两个参数。值得注意的是,调用的方法接口必须是静态函数。
</span></div>
2.oc调用js方法
这句话的作用是把回调js的代码放在OpenGL线程中
cocos2d::Director::getInstance()->getScheduler()->performFunctionInCocosThread([=](){
// jsval ret;
// ScriptingCore::getInstance()->evalString(js代码块, &ret);
<span style="white-space:pre"> </span>上面两种方法在creator1.3的时候废弃了。改为下面这两句,原因是类型比较危险JS::RootedValue ret(ScriptingCore::getInstance()->getGlobalContext());ScriptingCore::getInstance()->evalString(js<span style="font-family: Arial, Helvetica, sans-serif;">代码块, &ret);});</span>
3.js 调用java代码
jsb.reflection.callStaticMethod("com/org/Activity","open","()V");//第一个是要调用的方法所在的安卓项目的包名,第二个是方法名,第三个是方法
签名。具体的签名方式,可以查c++调用java的jni签名。这里就不多说了。
4,java调用js代码
AppActivity.app.runOnGLThread(new Runnable() {
<span style="white-space:pre"> </span>@Override
<span style="white-space:pre"> </span>public void run() {
<span style="white-space:pre"> </span>//android 调用 cocojs
<span style="white-space:pre"> </span>Cocos2dxJavascriptJavaBridge.evalString(js代码段);
<span style="white-space:pre"> </span>}
});
cocos creator 调用原生端方法相关推荐
- AjaxPro.NET使用,方便的在客户端直接调用服务端方法
(一). 运行效果如下: (二). AjaxPro.NET简介 AjaxPro.NET是一个优秀的Ajax框架, 在实际应用中只要添加其DLL引用并进行简单的配置, 即可以非常方便的在客户端直接调用服 ...
- vue 获取安卓原生方法_VUE H5调用原生APP方法实践笔记
最近做与app端的混合开发,了解到了H5与原生app端之间的方法互通 首先是我们给app端定义方法供他们使用(以vue为例) methods中定义一个方法名称 VContent() { console ...
- cocos creator 安卓原生平台环境_竞技对抗小游戏单挑篮球开发历程 | Cocos技术派第12期...
本文来自于"Cocos 荣耀讲师"征稿活动第1期,最先发表于 Cocos 中文社区,作者 ID:蟹老板,2017年加入社区,文章作品包括<猎头专家的开发历程>等. Co ...
- cocos creator 调用相机相册裁剪图片并上传到服务器
大致思路就是creator里面js调用Java和object-c代码,调起系统相机相册,选取图库图片/拍照图片进行裁剪,然后转化为base64字符串,最后通过http post请求上传到服务器. Ja ...
- cocos creator开发pc端的浏览器适配问题
因为pc浏览器端不比手机端,手机分辨率除了ipad等特别的,一般只需要把背景图拉宽或者拉高一些,就能保证不留黑边,pc端浏览器可以随便拉,但是一般为了效果,浏览器界面再拉也不允许留黑边的,可以试试其他 ...
- cocos creator 打包原生安卓apk 构建与编译
1.构建 参考官方文档,优先限配置安卓sdk,ndk 路径. 构建时,需选择api level 版本号. 2.编译. 遇到报错:java.lang.RuntimeException: java.io. ...
- cocos creator 安卓原生平台环境_cocos creator原生平台下载文件并保存到本地
网上没有找到相关的文章,写下来自己记一下 直接上代码:downFile2Local:function(url, fileName, callback){ var fullPath = jsb.file ...
- React Native手动实现调用原生相机相册(Android端)
前言 最近一直在学习RN的相关开发,想做一部分调用原生的实现,来练练手,于是就有了下面这个demo,由于本人是Android开发,所以只实现了Android端的效果. Demo 主要实现 这种调用原生 ...
- android native 相册,React Native手动实现调用原生相机相册(Android端)
前言 最近一直在学习RN的相关开发,想做一部分调用原生的实现,来练练手,于是就有了下面这个demo,由于本人是Android开发,所以只实现了Android端的效果. Demo 主要实现 这种调用原生 ...
最新文章
- 再迎利好,BCH开发团队BU融合石墨烯区块传播技术
- OpenGL中使用glutDisplayFunc(myDisplay),myDisplay里面的代码不显示
- algorand共识协议_【Filecoin】理解预期共识 - 及它的优缺点
- 工作37:账号绑定逻辑复杂
- LeetCode 421. 数组中两个数的最大异或值(Trie树)
- CSS属性值之百分数
- Linux中的nc测试端口是否开放
- 行人属性数据集pa100k_Attribute-Recognition行人属性识别资料
- EOS技术研究:合约与数据库交互
- Linux的sleep()和usleep()的使用和区别
- Arduino的软件:Arduino IDE和Mind+图形化编程
- vasp 计算杨氏弹性_VASP计算-力学常数1
- Dynamics CRM 2013学习伊始
- CocosCreator开发笔记(4)-Windows搭建幼麟麻将运行环境
- ubuntu18.04安装MPV视频播放器
- Code Project精彩系列(2)
- 解决方案之Android 国际化资源完美兼容6.0,7.0,8.0
- 任天堂游戏 html5,任天堂:会让粉丝们在Switch上玩到《毁灭战士:永恒》
- hibernate 根据方言生成sql
- ERP 基础数据 概念
热门文章
- PTA7-12 圆形体体积计算器 (20分)
- Android学习之导航--摘自黑马程序员
- 开发之外,我们还用过哪些装X的神器
- java 硬盘物理序列号_读取硬盘物理序列号
- Jetpack-Lifecycle
- 鲁大师2022年Q3季度电动车报告:九号机械师霸榜,绿源发力智能化
- android读取所有图片分页打印,js控制分页打印、打印分页示例
- 安装TortoiseGit教程 保姆级教程 手把手教学
- Couldn't create directory for SharedPreferences file 解法
- Chrome浏览器对某盘破速及安装.crx类型文件