对于此类需要访问设备的问题,触控没有给出具体的方法。下面是我的简单实现,欢迎批评、指正

既然是跨平台,那就要分别解决了,先是Android的

Android:思路就是使用JNI调用Java的静态函数并返回到C++中。具体的请看代码:

C++函数:

void NetworkHelper::setNetType(){
#if CC_TARGET_PLATFORM == CC_PLATFORM_WIN32
_netType = false;
#elif CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID
bool ret = false;
JniMethodInfo info;
bool bHave = JniHelper::getStaticMethodInfo(info, "org/cocos2dx/lib/Cocos2dxActivity", "getNetType", "()Z");
if (bHave){
ret = info.env->CallStaticBooleanMethod(info.classID, info.methodID);
info.env->DeleteLocalRef(info.classID);
}
_netType = ret;
#endif

}

Java的静态函数:

public static boolean getNetType(){
    Log.v("df","join");
    ConnectivityManager connectivityManager = (ConnectivityManager)sContext.getSystemService(sContext.CONNECTIVITY_SERVICE);  
        NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();  
        if(networkInfo == null || !networkInfo.isAvailable())  
        {  
            //当前无可用网络 
        return false;
        }  
        else   
        {  
            //当前有可用网络  
        return true;
        }    
 }

IOS:思路就是使用混编,调用ObjectC的函数,使用Appel提供的Reachability类来实现功能。具体的请看代码:

void NetworkHelper::setNetType(){

    bool _netType;
    Reachability *reach = [Reachability reachabilityForInternetConnection];
    NetworkStatus netStatus = [reach currentReachabilityStatus];
    if (netStatus == NotReachable){
       _netType = false;
    }
    else{
        _netType = true;
    }
}


更多相关文章

  1. Android提高十七篇之多级树形菜单的实现[转]
  2. Android--调用内置的浏览器
  3. Android(安卓)平滑和立体翻页效果2
  4. Android调用相机拍摄照片并显示到 ImageView控件中
  5. Android上使用LibSVM
  6. Android学习笔记(三十):弹出信息-Toast和告警
  7. delphi xe5 android 开发实现手机打电话和发短信
  8. [置顶] android 实现发送彩信方法 (MMS),非调用系统彩信界面
  9. Android(安卓)系统服务入门

随机推荐

  1. android的官方代码make sdk的时候出错
  2. Android Material Style 学习资料
  3. android 系统定制的小技巧(网络收集)
  4. 零碎知识点回顾——让android studio使用
  5. Android P九轴传感器数据读取
  6. Android Window 二 可移动悬浮窗口 Windo
  7. Android 如何识别判断小米 魅族 华为 系
  8. ImageView属性小结
  9. Android获取meta-data
  10. 最新Android 7.1.1 截屏方法