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


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


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

主題: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欧美一区二区三区
亚洲成人黄色小说| 久久波多野结衣| 亚洲天天做日日做天天谢日日欢| 26uuu久久综合| 日韩美女一区二区三区| 91精品国产综合久久久久久| 91麻豆精品国产91久久久久| 欧美一区2区视频在线观看| 欧美日韩精品一区视频| 91精品国产黑色紧身裤美女| 日韩欧美国产成人一区二区| 久久久久久免费毛片精品| 国产日韩精品视频一区| 国产精品久久久久aaaa樱花| 中文字幕一区日韩精品欧美| 亚洲精品免费播放| 视频一区二区国产| 国产黄色精品网站| 51蜜桃传媒精品一区二区| 久久国产精品99久久久久久丝袜| 亚洲精品一区二| 欧美日韩不卡一区二区| 久久久影视传媒| 亚洲黄色免费电影| 激情另类小说区图片区视频区| caoporm超碰国产精品| 久久精品美女| 在线视频欧美精品| 久久一二三国产| 亚洲欧美电影一区二区| 麻豆91免费看| 91免费在线视频观看| 色噜噜色狠狠狠狠狠综合色一| 欧美日韩国产一级片| 国产亚洲欧美中文| 亚洲影院久久精品| 国产精品综合一区二区| 国产亚洲自拍偷拍| 在线观看欧美黄色| 国产色婷婷亚洲99精品小说| 亚洲国产wwwccc36天堂| 国产999精品久久| 日本成人三级电影网站| 欧美一级视频精品观看| 亚洲精选一二三| 国产成人亚洲综合色影视| 蜜桃网站成人| 日韩一区二区在线看片| 一区二区三区免费在线观看| 国产乱一区二区| 欧美日韩一区在线播放 | www.在线成人| 日韩精品无码一区二区三区| 日韩欧美中文一区| 亚洲成人久久影院| 99re视频| 91精品欧美久久久久久动漫| 亚洲国产视频一区| av动漫一区二区| 欧美亚洲愉拍一区二区| 亚洲欧美日韩国产中文在线| 国产精品18久久久久久久久久久久 | 亚洲成人免费看| 99r国产精品| 欧美日韩一区二区在线视频| 亚洲自拍都市欧美小说| 91麻豆自制传媒国产之光| 欧美三级中文字幕在线观看| 亚洲精品午夜久久久| 91无套直看片红桃| 欧美日韩一区中文字幕| 亚洲午夜激情av| 国内精品久久国产| 精品粉嫩aⅴ一区二区三区四区| 美女视频黄免费的久久| 免费精品视频一区二区三区| 久久精品男人的天堂| 国产91丝袜在线18| 色八戒一区二区三区| 亚洲一区二区三区四区的| 国产综合欧美在线看| 精品国产一区二区三区久久影院| 麻豆视频一区二区| 亚洲制服中文| 亚洲一区二区三区三| 国产一区免费在线| 精品久久久久99| 国产91丝袜在线18| 91精品国产综合久久蜜臀| 久久99蜜桃精品| 色国产综合视频| 午夜日韩在线电影| 视频一区视频二区视频三区高| 国产精品久久久久久久久快鸭 | 一区二区三区视频在线观看| 成人精品水蜜桃| 久久亚洲一区二区三区明星换脸| 国产成人午夜精品影院观看视频| 欧美日韩高清影院| 国内外精品视频| 欧美色图天堂网| 精一区二区三区| 欧美亚洲国产怡红院影院| 美女www一区二区| 91久久香蕉国产日韩欧美9色| 亚洲一区二区三区四区在线免费观看| 久久久久久精| 亚洲一区二区三区视频在线| 日本一区视频在线| 亚洲高清在线精品| 一本一生久久a久久精品综合蜜| 亚洲电影中文字幕在线观看| 一区二区三区四区五区视频| 日本va欧美va欧美va精品| 欧美午夜视频网站| 国产精品一级二级三级| 精品国产乱码91久久久久久网站| 91亚洲永久精品| 久久久久久久网| 鬼打鬼之黄金道士1992林正英| 欧美国产丝袜视频| 久久精品二区| 日精品一区二区| 欧美人与性动xxxx| 99久久免费精品高清特色大片| 久久一区二区视频| 久久国产精品久久| 石原莉奈在线亚洲三区| 欧美日韩国产首页| 91一区二区在线| 亚洲伦理在线精品| 一本大道久久a久久综合| 国内外成人在线| 久久久久久久久久久久久女国产乱| 成人免费视频视频在| 亚洲中国最大av网站| 欧美视频日韩视频在线观看| 成人一区二区三区视频在线观看| 久久精品人人做人人综合| 牛人盗摄一区二区三区视频| 蜜臀久久99精品久久久画质超高清| 日韩欧美中文一区| 久久久www免费人成黑人精品| 日韩国产欧美视频| 欧美xxxx老人做受| 欧美日韩一区在线观看视频| 久久99精品网久久| 久久久久国产成人精品亚洲午夜| 久久涩涩网站| 久久99精品视频| 欧美激情在线一区二区三区| 亚洲一区二区精品在线| 成人黄色片在线观看| 怡红院av一区二区三区| 欧美日韩国产美女| 久久国产精品免费一区| 国产乱人伦偷精品视频不卡| 中文字幕一区二区三中文字幕| 一本色道久久综合狠狠躁的推荐| 成人av集中营| 天天色 色综合| 久久精品免费在线观看| 在线成人性视频| 成人18视频| 老汉av免费一区二区三区 | 欧美va日韩va| 欧美一区二区三区成人久久片 | 玉米视频成人免费看| 欧美精品一卡两卡| 日本午夜精品电影| 不卡视频一二三四| 午夜免费久久看| 亚洲国产精品成人综合色在线婷婷| 一本大道久久a久久精品综合| 超碰97网站| 韩国三级中文字幕hd久久精品| 国产精品久久久久久福利一牛影视| 欧美日韩情趣电影| 欧美最大成人综合网| 91亚洲国产成人精品一区二三 | 欧美日韩国产一二| 成人av电影免费在线播放| 日韩精品欧美成人高清一区二区| 国产女主播视频一区二区| 欧美日韩高清一区二区不卡| 欧美一级二级三级九九九| 91九色在线免费视频| 国产美女主播视频一区| 天堂一区二区在线| 亚洲三级在线看| 国产日本欧洲亚洲| 日韩欧美一二区| 欧美日韩精品一区二区三区 | 中文字幕一区三区| 26uuu国产日韩综合| 欧美日韩综合一区| 亚洲一区二区在| 欧美亚州在线观看| 国产日韩欧美综合精品| 91同城在线观看|