您好,欢迎访问一九零五行业门户网

cocos2dx代码调用本地浏览器步骤详解

1.找到ndk路径/sources/cocos2dx/platform/android/ccapplication.h添加方法 void openurl(const char* pszurl); 2找到ndk路径/sources/cocos2dx/platform/android/ccapplication.cpp 实现方法 void ccapplication::openurl(const char* pszurl) { jnimethod
1.找到ndk路径/sources/cocos2dx/platform/android/ccapplication.h添加方法
void openurl(const char* pszurl);
2找到ndk路径/sources/cocos2dx/platform/android/ccapplication.cpp实现方法
void ccapplication::openurl(const char* pszurl)
{
jnimethodinfo minfo;
if (jnihelper::getstaticmethodinfo(minfo,
org/cocos2dx/lib/cocos2dxactivity,  //src路径下的文件
openurl,//cocos2dxactivity文件的方法(下面会添加)
(ljava/lang/string;)v))                      //openurl()方法的参数类型object,返回值类型void
{
jstring stringarg1 = minfo.env->newstringutf(pszurl);
minfo.env->callstaticvoidmethod(minfo.classid, minfo.methodid, stringarg1);
minfo.env->deletelocalref(stringarg1);
minfo.env->deletelocalref(minfo.classid);
}
}
3.找到cocos2dxactivity.java 导入命名空间
import android.content.intent;
import android.net.uri;
4.cocos2dxactivity.java中添加 
private static activity wu= null;
修改oncreate()为
protected void oncreate(final bundle savedinstancestate) {
super.oncreate(savedinstancestate);
scontext = this;
    this.mhandler = new cocos2dxhandler(this);
    wu = this;
    this.init();
cocos2dxhelper.init(this, this);
}
添加方法
  //实现浏览器模块的调用
   public static void openurl(string url) 
     { 
           intent intent = new intent(intent.action_view);  
           intent .setdata(uri.parse(url));
           wu.startactivity(i);
     }
在想调用的地方实现调用
ccapplication::sharedapplication()->openurl(http://www.mcttqp.com/download/djmxd.apk);
其它类似信息

推荐信息