cocos2d lua调用OC代码
2016-12-06 16:40
519 查看
1 . 新建LuaCallOC.h 和 LuaCallOC.mm
luaCallOC.h
luaCallOC.mm
2 . 将LuaCallOC.h 和 LuaCallOC.mm添加到xcode
3 .lua调用OC
luaCallOC.h
@interface LuaCallOC : NSObject { } // 跳转到appstore + (char) gotoAppstore:(NSDictionary *)dict; // 是否WIFI + (char) IsEnableWIFI; // 获取网络状态 + (int) getNetStatus; @end
luaCallOC.mm
#import "LuaCallOC.h" #import "Reachability.h" #include <arpa/inet.h> @implementation LuaCallOC // 跳转到appstore + (char) gotoAppstore:(NSDictionary *)dict { NSString *str = [dict objectForKey:@"address"]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString : str]]; return YES; } // 是否WIFI + (char) IsEnableWIFI { struct sockaddr_in addr; bzero(&addr, sizeof(addr)); addr.sin_len = sizeof(addr); addr.sin_family = AF_INET; addr.sin_addr.s_addr = htonl(IN_LINKLOCALNETNUM); BOOL ret =([[Reachability reachabilityWithAddress: (sockaddr*)&addr] currentReachabilityStatus] == ReachableViaWiFi); return ret; } // 获取网络状态 + (int) getNetStatus { //可以使用多种方式初始化 Reachability *reach = [Reachability reachabilityWithHostName:@"www.apple.com/"]; /*//判断当前的网络状态 switch ([reach currentReachabilityStatus]) { case ReachableViaWWAN: NSLog(@"正在使用移动数据网络"); break; case ReachableViaWiFi: NSLog(@"正在使用WiFi"); break; default: NSLog(@"无网络"); break; }*/ return [reach currentReachabilityStatus]; } @end
2 . 将LuaCallOC.h 和 LuaCallOC.mm添加到xcode
3 .lua调用OC
local ok, ret = luaoc.callStaticMethod("LuaCallOC", "gotoAppstore", {address = markConf[channelId].markAddress}) local ok, ret = luaoc.callStaticMethod("LuaCallOC", "IsEnableWIFI") -- ok 为true代表调用成功, 此时ret为返回值 -- ok 为false代表调用失败, 此时ret为失败原因
相关文章推荐
- cocos2d-x lua c++ 相互调用代码中直接调用注册
- cocos2d-x Lua与OC互相调用
- 如何在cocos2d c++代码中调用lua以及探究
- cocos2d-x lua c++ 相互调用代码中直接调用注册
- Android游戏开发cocos2d-x调用Java层代码
- OC代码调用C++代码的回调函数步骤
- D'Fusion中lua调用c++生成的dll库,并且lua调用c++代码(遍历文件夹中整个目录)
- (如何在C++代码中调用Lua脚本的函数?)
- cocos2d-iphone 调用lua
- Cocos2d-x游戏开发之Cocos2dx通过JNI调用Android的Java代码(webView实例)
- lua脚本调用cocos2d-x 之实现精灵、Tmx地图创建【iOS游戏开发征文】
- 【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(下)
- 【iOS-cocos2d-X 游戏开发之十三】详细讲解在Xcode中利用预编译并通过Jni调用Android的Java层代码(cocos2dx里访问调用Android函数)!
- Cocos2d-x中通过JNI进行C++调用Java代码
- (转)升级到cocos2d-x 2.0.2代码差异(重点为调用方法)
- cocos2d-x-2.1beta3-x-2.1.1调用lua带参数全局函数
- C++调用Lua代码
- 【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(上)
- 【木头Cocos2d-x 031】Lua篇(第06章):Lua调用C++的函数
- cocos2d-x lua 和c++的相互调用的原理