久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://www.rfoamep.cn/bbs/index.asp)
--  Android應(yīng)用開發(fā)  (http://www.rfoamep.cn/bbs/list.asp?boardid=45)
----  Android學(xué)習(xí)開發(fā)4--Android在C++中調(diào)用java(3)  (http://www.rfoamep.cn/bbs/dispbbs.asp?boardid=45&id=2037)

--  作者:wangxinxin
--  發(fā)布時間:2010-12-3 11:51:12
--  Android學(xué)習(xí)開發(fā)4--Android在C++中調(diào)用java(3)

5.2 java類的實例化
都知道java需要 obj var = new obj();這樣一個過程,我們在C++中調(diào)用java類的成員函數(shù),當(dāng)然也要先示例話一個類。
示例化的函數(shù)如下所示
jobject getInstance(JNIEnv* env, jclass obj_class)
{
    jmethodID construction_id = env->GetMethodID(obj_class, "<init>", "()V");
    jobject obj = env->NewObject(obj_class, construction_id);
    return obj;
}
這個函數(shù)中的env表示環(huán)境參數(shù),jclass表示一個java類的句柄。
jmethodID construction_id = env->GetMethodID(obj_class, "<init>", "()V");
GetMethodID的參數(shù)分別為(類句柄,方法名稱,參數(shù)名稱)
這個是為了獲取java類中某個方法的句柄,有一點需要特別注意的,在獲取構(gòu)造方法的句柄和別的方法的句柄是不一樣的。
獲取一般方法的句柄所填寫“方法名稱”參數(shù)直接就是這個方法的名稱,而構(gòu)造函數(shù)的話就必須填寫"<init>"。除了這點區(qū)別外,就沒有區(qū)別了。
而我們的“參數(shù)名稱”似乎寫的就有些奇怪了。但是細(xì)說下他的規(guī)律也就不怪了。
參數(shù)名稱的書寫規(guī)則為 (參數(shù)1類型,參數(shù)2類型….)返回類型。而相應(yīng)類型的表示如下所示
圖片點擊可在新窗口打開查看

比如我們要找個int func(double)類型的函數(shù),就該這么寫:
jmethodID construction_id = env->GetMethodID(obj_class, " func ", "(D)I");
找到了構(gòu)造函數(shù)的方法之后我們直接調(diào)用構(gòu)造函數(shù),然后把生成的類返回即可
jobject obj = env->NewObject(obj_class, construction_id);
其中obj_class為類的句柄construction_id為構(gòu)造函數(shù)的句柄,而類的實例被該函數(shù)返回。

5.3 調(diào)用java類的其他函數(shù)
JNIEXPORT jstring JNICALL Java_com_hm_hello_CActivityMain_stringFromJNI
(JNIEnv* env, jobject)
{
   jstring str;
   jclass java_class = env->FindClass("com/hm/hello/CForCall");
    if (java_class == 0)
    {
       return env->NewStringUTF("not find class!");
    }
   jobject java_obj = getInstance(env, java_class);
   if (java_obj == 0)
   {
       return env->NewStringUTF("not find java OBJ!");
   }
   jmethodID java_method = env->GetMethodID(java_class, "GetJavaString", "()Ljava/lang/String;");
   if(java_method == 0)
   {
       return env->NewStringUTF("not find java method!");
   }
   str = (jstring)env->CallObjectMethod(java_obj, java_method);
   return str;
}
看完了構(gòu)造函數(shù)的介紹,這段代碼其實很容易就看懂了,我們發(fā)現(xiàn)調(diào)用java中的函數(shù)的步驟無非幾步:
1找到類句柄
2找到類的方法的句柄
3實例化類
4調(diào)用實例化類的方法。
而以上代碼中只有一段沒說過,就是
jclass java_class = env->FindClass("com/hm/hello/CForCall");
看名字就知道,是在找相應(yīng)的類的句柄,其中com.hm.hello準(zhǔn)備調(diào)用類的完整包名(把.轉(zhuǎn)換為/),而CforCall就是我們要調(diào)用的類的名稱。
至此,編譯,然后在Android調(diào)試,可愛的機(jī)器人又出現(xiàn)了,哈哈,屏幕上顯示出現(xiàn)了12345,成功!


久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
国产成人av福利| 国产精品一区二区黑丝| 久久午夜免费电影| 久久天天做天天爱综合色| 久久久99精品免费观看不卡| 2020国产精品自拍| 国产精品久久久久永久免费观看 | 欧美日韩一区二区三区不卡| 91精品国产福利| 国产欧美综合在线观看第十页| 国产精品福利电影一区二区三区四区| 国产精品福利一区二区三区| 亚洲一卡二卡三卡四卡| 日韩av午夜在线观看| 国产一区二区免费看| av毛片久久久久**hd| 欧美极品一区二区| 色综合久久88色综合天天免费| 精品1区2区3区| 精品国产乱码久久久久久久| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲线精品一区二区三区| 久久精品噜噜噜成人88aⅴ| 成人aa视频在线观看| 国产一区二区视频在线免费观看| 亚洲精品一区二区三| 欧美久久久久免费| 国产精品国产三级国产aⅴ原创| 日韩电影一区二区三区四区| 国产a久久麻豆| 欧美高清视频一区| 欧美久久一二区| 中文字幕一区二区三区精华液| 日本成人在线电影网| 91精品入口蜜桃| 亚洲高清不卡一区| 久久精品欧美日韩| 日韩av中文字幕一区二区| 成人av资源在线观看| 日本不卡一区二区三区视频| 日韩欧美亚洲另类制服综合在线| 亚洲一区视频在线| 成人激情午夜影院| 色噜噜狠狠色综合欧洲selulu| 久久久久久久网| 精品一区二区三区免费视频| 欧美日韩免费高清| 精品国产免费久久| 老司机精品视频在线| 久久av一区二区三区亚洲| 欧美色精品在线视频| 一级做a爱片久久| 91麻豆精品视频| 欧美日韩一级片在线观看| 国产精品乱人伦一区二区| 国精产品一区一区三区mba桃花| 欧美大香线蕉线伊人久久国产精品| 91精品蜜臀在线一区尤物| 一区二区三区四区在线免费观看| 懂色av中文一区二区三区 | 日韩欧美的一区| 婷婷激情综合网| 极品日韩久久| 久久久蜜桃精品| 国产999精品久久| 在线观看亚洲专区| 亚洲福利一区二区| 免费在线一区二区| 中文字幕在线免费不卡| av影院午夜一区| 日韩一区二区三区在线观看| 日本v片在线高清不卡在线观看| 欧美亚洲另类在线一区二区三区| 国产亚洲1区2区3区| av一二三不卡影片| 精品国产乱码久久久久久图片| 国产乱码精品1区2区3区| 91国偷自产一区二区三区成为亚洲经典| 一区二区三区四区在线| 久久综合给合久久狠狠色| 欧美国产日本视频| 91麻豆免费在线观看| 26uuu精品一区二区| 懂色av一区二区三区蜜臀 | 日韩精品一区二区三区视频| 精品一区二区免费在线观看| 在线免费一区| 婷婷综合另类小说色区| 伊人久久99| 天天综合色天天综合| 天天好比中文综合网| 亚洲美女免费在线| 欧美激情专区| 亚洲国产精品一区二区久久 | 国产精品全国免费观看高清| 91精品免费| 国产欧美日韩在线看| 99视频在线精品| 亚洲精品在线免费观看视频| 99国产精品久久久久| 久久久久久**毛片大全| 91超碰rencao97精品| 日本一区二区免费在线观看视频| 99精品国产高清一区二区| 中文av一区二区| 免费在线观看一区二区| 亚洲香肠在线观看| 在线亚洲精品福利网址导航| 激情文学综合网| 精品国产乱码久久久久久浪潮| 不卡影院免费观看| 国产精品美女一区二区在线观看| 麻豆久久久av免费| 奇米777欧美一区二区| 欧美日韩成人综合天天影院| www..com久久爱| 国产精品视频在线看| 欧美日韩亚洲综合一区二区三区激情在线 | 欧美国产一区在线| 日本一区二区久久精品| 日本美女一区二区三区视频| 欧美疯狂性受xxxxx喷水图片| 成人一区二区视频| 中文字幕一区av| 色婷婷综合久久久中文字幕| 国产精品一区二区久激情瑜伽| 久久久不卡网国产精品二区| 欧美一区三区二区在线观看| 久久成人18免费观看| 久久嫩草精品久久久精品一| 欧美日韩在线精品一区二区三区| 美女一区二区久久| 2021久久国产精品不只是精品| 欧美成人综合一区| 国精产品一区一区三区mba视频 | 天天综合天天综合色| 欧美一区二区三区影视| 国产精品99久久久久久久| 日韩国产欧美在线播放| 精品少妇一区二区三区视频免付费 | 精品国产乱码久久| 日韩av高清| 成人免费av在线| 一区二区三区中文字幕| 欧美日韩国产另类一区| 国产精品区一区| 国产一区在线视频| 亚洲欧洲综合另类| 日韩一区二区高清| 亚洲 日韩 国产第一区| 99亚偷拍自图区亚洲| 五月激情综合网| 国产精品素人一区二区| 欧美曰成人黄网| 精品乱码一区二区三区| 国产成人亚洲综合a∨猫咪| 亚洲一区二区三区爽爽爽爽爽 | 日本高清久久一区二区三区| 懂色av一区二区三区蜜臀| 亚洲成人av福利| 久久一区二区三区四区| 色婷婷精品久久二区二区蜜臀av | 色激情天天射综合网| www.成人av.com| 国产美女在线精品| 亚洲高清免费观看 | 国产日韩欧美a| 欧美日韩视频一区二区| 欧美日本韩国在线| 91久久伊人青青碰碰婷婷| 国产麻豆午夜三级精品| 亚洲国产一区二区三区 | 一区二区三区四区高清精品免费观看| 欧美一级日韩免费不卡| 色婷婷综合五月| 欧美一区二区三区四区在线观看地址 | 亚洲色图制服丝袜| 久久综合色播五月| 欧美精品三级在线观看| 一区二区在线观看网站| 欧美日韩一区二| 国产伦精品一区二区三区四区免费| 成人一二三区视频| 国产乱一区二区| 精品一区二区三区香蕉蜜桃| 日韩福利电影在线观看| 亚洲高清免费观看高清完整版在线观看| 久久久久久9999| 欧美精品一区二区三区久久久| 欧美三片在线视频观看| 日本乱人伦一区| 色综合久久综合网欧美综合网| 先锋影音一区二区三区| 欧美中文娱乐网| 欧美亚洲另类久久综合| 欧美黄色直播| 免费成人在线观看av| 久久亚裔精品欧美| 精品一区二区三区日本| 久久er99热精品一区二区三区|