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


曙海教育集團論壇3G手機技術專區Android應用開發 → Android學習開發4--Android在C++中調用java(3)


  共有7667人關注過本帖樹形打印

主題:Android學習開發4--Android在C++中調用java(3)

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
Android學習開發4--Android在C++中調用java(3)  發帖心情 Post By:2010-12-3 11:51:12

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

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

5.3 調用java類的其他函數
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;
}
看完了構造函數的介紹,這段代碼其實很容易就看懂了,我們發現調用java中的函數的步驟無非幾步:
1找到類句柄
2找到類的方法的句柄
3實例化類
4調用實例化類的方法。
而以上代碼中只有一段沒說過,就是
jclass java_class = env->FindClass("com/hm/hello/CForCall");
看名字就知道,是在找相應的類的句柄,其中com.hm.hello準備調用類的完整包名(把.轉換為/),而CforCall就是我們要調用的類的名稱。
至此,編譯,然后在Android調試,可愛的機器人又出現了,哈哈,屏幕上顯示出現了12345,成功!


支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

Android學習開發4--Android在C++中調用java(3)








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
国产欧美日韩在线播放| 亚洲精品一区二区三区影院| 99久久婷婷国产综合精品电影| 奇米在线7777在线精品 | 日韩aⅴ视频一区二区三区| 成人女人免费毛片| 国产日韩二区| 日产精品久久久一区二区| 一区二区三区四区欧美日韩| 色狠狠综合天天综合综合| 欧美日韩高清一区二区不卡| 日韩精品专区在线影院重磅| 久久精品欧美日韩精品| 亚洲欧美激情视频在线观看一区二区三区 | 欧美日韩国产精品一卡| 日韩三级电影网站| 91久久精品日日躁夜夜躁欧美| 欧美色图一区二区三区| 精品免费99久久| 国产精品国产精品国产专区不蜜 | 欧美性色aⅴ视频一区日韩精品| 在线成人av影院| 久久久精品国产免大香伊| 国产精品久久久一区麻豆最新章节| 亚洲制服欧美中文字幕中文字幕| 蜜桃一区二区三区四区| 成人一级黄色片| 精品久久一区二区三区蜜桃| 中文字幕一区二区三区四区五区六区 | 不卡欧美aaaaa| 精品日产一区2区三区黄免费 | 欧美一区二区高清| 国产精品视频麻豆| 日韩精品免费视频人成| 成人免费视频网站在线观看| 另类小说综合网| 在线不卡免费av| 亚洲乱码国产乱码精品精98午夜 | 午夜视频在线观看一区二区| 国产精品一区二区在线播放| 精品国产免费一区二区三区 | 日本亚洲最大的色成网站www| 成人免费va视频| 久久亚洲国产精品日日av夜夜| 欧美在线影院一区二区| 国产清纯白嫩初高生在线观看91| 亚洲成人精品影院| 96av麻豆蜜桃一区二区| 在线观看欧美激情| 久久精品在这里| 蜜桃在线一区二区三区| 高清免费日韩| 911精品产国品一二三产区| 综合久久久久久| 国产成人免费视频| 亚洲精品一区国产精品| 久久午夜国产精品| 蜜桃视频在线观看一区二区| 国产精品一 二 三| 欧美男人的天堂一二区| 亚洲一区二三区| 99视频免费观看蜜桃视频| 欧美视频中文一区二区三区在线观看| 国产精品不卡在线观看| 国产不卡免费视频| 色系网站成人免费| 亚洲色图清纯唯美| 本田岬高潮一区二区三区| 色噜噜久久综合| 一区二区三区91| 国产乱码精品一区二区三区不卡| 欧美一级午夜免费电影| 日本欧美一区二区三区| 欧美精品一区二区三区在线四季| 久久久久高清精品| 高清av一区二区| 欧美羞羞免费网站| 亚洲妇熟xx妇色黄| 免费日韩电影在线观看| 国产精品区一区二区三区| 成人免费观看视频| 91精品国产乱码久久蜜臀| 免费在线观看成人| 亚洲欧美久久久久一区二区三区| 中文字幕一区二区在线播放 | 亚洲激情中文1区| 成人h在线播放| 久久亚洲捆绑美女| 不卡视频一二三| 日韩欧美久久一区| 国产精品一线二线三线| 欧美视频一区在线| 免费美女久久99| 色综合激情五月| 男女性色大片免费观看一区二区| 亚洲春色在线视频| 亚洲v精品v日韩v欧美v专区| 神马影院我不卡| 亚洲精品五月天| 精品国产免费久久久久久尖叫 | 欧美日韩的一区二区| 日本欧美一区二区在线观看| 中文字幕人成一区| 日韩av高清在线观看| 色婷婷久久久亚洲一区二区三区 | 国产一区999| 欧美一区二区免费| 高清久久久久久| 亚洲精品一区二区三区精华液| 成人免费观看视频| 欧美精品一区二区三| 91蜜桃婷婷狠狠久久综合9色| www成人在线观看| 99视频日韩| 国产精品福利一区二区三区| 国产一区二区高清不卡| 亚洲欧美中日韩| 亚洲成人第一| 久久99精品久久久久久动态图| 欧美日韩dvd在线观看| 国产aⅴ综合色| 久久人人爽爽爽人久久久| 国产精品免费一区二区三区| 亚洲欧美另类久久久精品| 日韩欧美亚洲区| 精品一区二区在线观看| 精品美女一区二区| 国产视频在线观看一区| 亚洲一区二区三区国产| 欧美色中文字幕| 99re6这里只有精品视频在线观看| 国产欧美日韩不卡免费| 日本免费高清一区二区| 久久99精品久久久久久久久久久久| 欧美一级xxx| 国产综合 伊人色| 日韩在线观看一区二区| 欧美福利视频导航| 国产精品久久精品视| 亚洲高清视频中文字幕| 欧美日韩国产一级片| a美女胸又www黄视频久久| 日韩一区欧美小说| 欧美三级韩国三级日本一级| 91在线云播放| 一个色在线综合| 精品视频999| 99国产超薄丝袜足j在线观看 | 一区二区三区中文字幕精品精品 | 日韩国产在线观看一区| 欧美第一区第二区| 久久人人九九| 国产一区二区三区四区在线观看 | 精品免费视频.| 日本精品一区| 国产91色综合久久免费分享| 国产精品成人一区二区艾草 | 成人美女在线视频| 亚洲伦理在线精品| 欧美精品在线观看一区二区| 国产一区二区在线网站| 久久精品国产99| 中文字幕一区二区视频| 欧美日韩不卡一区二区| 久久天天狠狠| 成人免费毛片aaaaa**| 亚洲成av人片在线| 亚洲国产高清在线| 欧美日韩国产免费| 日韩精品一区二区三区丰满| 波多野结衣中文字幕一区二区三区| 亚洲va欧美va人人爽午夜| 久久久久久电影| 91在线看网站| 亚洲va韩国va欧美va精品| 欧美日韩电影在线| 丁香婷婷深情五月亚洲| 成人av在线一区二区| 大波视频国产精品久久| 精品一区二区国产| 中文字幕久久综合| 欧美巨大另类极品videosbest| 日韩情涩欧美日韩视频| 国产精品短视频| 免费在线观看不卡| 九色综合国产一区二区三区| 婷婷成人综合网| 欧美日韩在线亚洲一区蜜芽| 久久精品国产一区二区三区日韩| 国产激情91久久精品导航| 亚洲午夜久久久久久久久电影网| 精品对白一区国产伦| 欧美人与z0zoxxxx视频| 在线不卡视频一区二区| 久久久久久草| 99久久自偷自偷国产精品不卡| 国产成人午夜电影网| 精品一区二区在线观看| 日本亚洲最大的色成网站www| 亚洲激情第一区|