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

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://m.rfoamep.cn/bbs/index.asp)
--  Android應(yīng)用開發(fā)  (http://m.rfoamep.cn/bbs/list.asp?boardid=45)
----  Android學(xué)習(xí)開發(fā)4--Android在C++中調(diào)用java(3)  (http://m.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欧美一区二区三区
黄色精品一二区| 国产精品亚洲专一区二区三区| 欧美日韩一区二区三区视频| 欧美日韩在线一区二区| 一本高清dvd不卡在线观看 | 亚洲国产欧美在线| 亚洲自拍偷拍网站| 丝袜脚交一区二区| 国产美女在线精品| 97精品电影院| 久久国产精品99久久久久久丝袜| 国产福利不卡视频| www.久久艹| 欧美久久久久久| 色嗨嗨av一区二区三区| 欧美精品久久久久久久多人混战 | 成人av资源网| 91久久精品日日躁夜夜躁欧美| 亚洲视频电影在线| 亚洲最快最全在线视频| 国产综合成人久久大片91| 92国产精品观看| 视频在线一区二区三区| 欧美日韩国产小视频| 久久综合五月天婷婷伊人| 亚洲乱码国产乱码精品精小说| 亚洲无人区一区| 国产精品1024| 热re99久久精品国99热蜜月| 欧美三级日韩三级| 国产精品对白交换视频| 久88久久88久久久| 精品日本一区二区三区| 国产精品免费丝袜| 久久女同精品一区二区| 视频一区免费在线观看| 国产高清一区二区三区| 欧美性生活久久| 亚洲夂夂婷婷色拍ww47| 91麻豆高清视频| 日韩欧美国产一区二区在线播放| 亚洲高清免费观看高清完整版在线观看| 国产麻豆91精品| 日本一区二区三不卡| 国产精品私人自拍| 国产成人福利片| 91精品国产免费| 日韩二区在线观看| 欧美一区二区三区电影在线观看| 久久久久久久综合| 99热精品一区二区| 欧美日本韩国一区| 国内精品写真在线观看| 欧美一个色资源| 91影院在线免费观看| 久久久青草青青国产亚洲免观| 成人爱爱电影网址| 国产精品黄色在线观看| 亚洲成人自拍| 国产高清无密码一区二区三区| 日韩精品极品视频在线观看免费| 国产精品久久久久久久久久免费看| 91色porny在线视频| 日韩欧美国产三级电影视频| 91蝌蚪国产九色| 国产日韩精品一区二区三区| 国产精品9999久久久久仙踪林| 国产精品第一页第二页第三页| av午夜精品一区二区三区| 久久亚洲二区三区| 91网站黄www| 国产精品情趣视频| 欧美日韩国产一二| 韩国欧美国产一区| 精品国产一区二区精华| 欧美二区三区在线| 国产在线精品一区二区三区不卡| 久久亚洲精品国产精品紫薇| 美女被啪啪一区二区| 韩国av一区二区三区四区| 国产女同互慰高潮91漫画| 亚洲不卡中文字幕| 成人国产一区二区三区精品| 亚洲一区视频在线观看视频| 欧美高清激情brazzers| 日韩在线电影一区| 成人免费毛片app| 日本欧美加勒比视频| 久久久777精品电影网影网| 亚洲国产成人不卡| 精品国产乱码久久久久久蜜柚| 久久精品国产精品亚洲精品| 日韩美女精品在线| 精品乱人伦小说| 欧美日韩在线播放一区| 日本福利一区二区三区| 成人情视频高清免费观看电影| 美国三级日本三级久久99| 亚洲一区二区中文在线| 国产精品高清亚洲| 国产精品网站导航| 精品免费日韩av| 欧美一区国产二区| 欧洲精品在线观看| 91福利视频网站| 日本黄色一区二区| 中文字幕一区二区三区在线乱码| 久久免费一区| 精品久久久久久中文字幕动漫| 丁香婷婷综合激情五月色| 国精产品一区一区三区mba视频| 亚洲国产成人tv| 亚洲国产精品尤物yw在线观看| 亚洲欧洲精品天堂一级| 国产精品免费免费| 国产精品网曝门| 樱花草国产18久久久久| 亚洲综合色在线| 久久99久久久久| 国产成人免费av在线| 成人av影院在线| 操人视频欧美| 色又黄又爽网站www久久| 中文字幕色一区二区| 欧美精品久久99久久在免费线 | 欧美日韩精品欧美日韩精品一综合| 日本在线播放一区| 色天使色偷偷av一区二区| 欧美日本在线播放| 日韩精品一区二区三区视频播放| 精品国产三级a在线观看| 国产天堂亚洲国产碰碰| 一区二区三区不卡在线观看| 亚洲午夜一区二区| 成人高清在线视频| 欧美12av| 欧美人狂配大交3d怪物一区| 国产亚洲综合在线| 日本少妇一区二区| av不卡免费电影| 日韩精品不卡| 精品少妇一区二区三区 | 欧美日韩精品综合在线| 日韩欧美不卡在线观看视频| 亚洲欧洲精品一区二区三区| 日韩精品乱码av一区二区| 91免费观看在线| 欧美日韩一区小说| 亚洲日本青草视频在线怡红院| 国内精品久久久久影院色| 国产富婆一区二区三区| 欧美精品久久久久久久多人混战| 日本一二三四高清不卡| 国产精品正在播放| 一区二区三区久久网| 成人欧美一区二区三区小说| 懂色av一区二区三区免费观看| 亚洲二区自拍| 国产精品天天看| 91女神在线视频| 欧美电影免费观看高清完整版| 亚洲一区二区美女| 久久久久久久久久久久久久一区| 欧美一区二区三区四区在线观看| 蜜桃传媒一区二区| 欧美—级在线免费片| 国产91清纯白嫩初高中在线观看| 伊人av成人| 青青草原综合久久大伊人精品| 西游记1978| 视频一区在线播放| 欧美视频一区二区三区在线观看| 亚洲在线视频免费观看| 少妇免费毛片久久久久久久久 | 日本一区二区三区在线不卡| 国产乱子伦视频一区二区三区| 3atv在线一区二区三区| 国产做a爰片久久毛片| 欧美日韩精品高清| 国产91富婆露脸刺激对白| 欧美电影免费观看高清完整版在线观看 | 欧美大片国产精品| 国产成人免费视频网站| 国产午夜精品一区二区三区四区| aaa亚洲精品| 亚洲美女一区二区三区| 在线国产电影不卡| www.欧美色图| 亚洲一区二区中文在线| 欧美午夜精品免费| 国产成人8x视频一区二区| 最近日韩中文字幕| 欧美体内she精视频| 国产精品一区而去| 天堂资源在线中文精品| 欧美精品一区二区三区久久久| 欧美不卡在线一区二区三区| 国精产品一区一区三区mba视频| 国产亚洲美州欧州综合国 | 91视视频在线观看入口直接观看www |