zoukankan      html  css  js  c++  java
  • JNI c++ 调用 java

    ----------------------------------------------c++---------------------------------------

    #include "JniHelper.h"

    JniMethodInfo t;

    if (JniHelper::getStaticMethodInfo(t,"org/cocos2dx/lib/Cocos2dxActivity", "openUrl", "(Ljava/lang/String;)V")) {
    jstring stringArg = t.env->NewStringUTF(_url.c_str());
    t.env->CallStaticVoidMethod(t.classID, t.methodID,stringArg);
    t.env->DeleteLocalRef(t.classID);
    }

    调用openUrl 参数为_url

    ++++++++++++++++++++++++++java+++++++++++++++++++++++++++++

    public static void openUrl(String url) {
    Uri uri = Uri.parse(url);
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
    m_instance.startActivity(intent);
    }

    ++++++++++++++++++++end+++++++++++++++++++++++++++++++++++++++

    =================c++=================================

    const char* text="";

    const char* picture="";

    const char* title="";

    JniMethodInfo t;

    if (JniHelper::getStaticMethodInfo(t,"org/cocos2dx/lib/ShareDialog", "shareText", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V")) {
    jstring stringText = t.env->NewStringUTF(text);
    jstring stringPicture = t.env->NewStringUTF(filepath.c_str());
    jstring stringTitle = t.env->NewStringUTF(title);
    t.env->CallStaticVoidMethod(t.classID, t.methodID,stringText,stringPicture,stringTitle);
    t.env->DeleteLocalRef(t.classID);
    }

    ===============java=======================================

    public static void shareText(String text,String picture,String title) {
    File f = new File(picture);
    Uri u = Uri.fromFile(f);

    String subject = "share";
    int shareTitleId = m_instance.getResources().getIdentifier("share_title","string",m_instance.getPackageName());
    if(shareTitleId!=0){
    subject = m_instance.getString(shareTitleId);
    }

    Intent intent=new Intent(Intent.ACTION_SEND);

    intent.putExtra(Intent.EXTRA_SUBJECT,title);
    intent.putExtra(Intent.EXTRA_STREAM, u);
    intent.putExtra(Intent.EXTRA_TEXT,text);
    intent.setType("image/*");
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    m_instance.startActivity(Intent.createChooser(intent,subject));
    }

    ======================end=======================

  • 相关阅读:
    17 中国天气网信息爬取
    16 select和css选择器(提取元素详解)
    15 Beautiful Soup(提取数据详解find_all())
    linux命令之tail命令
    Linux命令之ps命令
    Android使用Fiddler模拟弱网络环境测试
    发送邮件smtplib,email,邮件头header,定时器schedule,爬虫requests(转)
    python实现发送带附件的邮件 (转载)
    VMware centos 7 图形界面的分辨率和终端字体大小设置(转)
    docker-compose: 未找到命令
  • 原文地址:https://www.cnblogs.com/huazaizai/p/3182575.html
Copyright © 2011-2022 走看看