日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > > 充電吧
[導(dǎo)讀]數(shù)據(jù)類型簽名對照表: jobject Ljava/lang/Object; jclass Ljava/lang/Class; jstring Ljava/lang/String; jthro

數(shù)據(jù)類型簽名對照表:


jobject
Ljava/lang/Object;

jclass
Ljava/lang/Class;

jstring
Ljava/lang/String;

jthrowable
Ljava/lang/Throwable;

jobjectArray
[Ljava/lang/Object;

jarray
[jbooleanArray
[Z

jbyteArray
[B

jcharArray
[C
jshortArray
[S

jintArray
[I

jlongArray
[J

jfloatArray
[F

jdoubleArray
[D

Primitive?Types


jboolean
Z

jbyte
B

jchar
C

jshort
S

jint
I
jlong
J

jfloat
F

jdouble
D


void
V
Custom?type
L;
JAVA中的String
String是一個類,在JAVA中非常常用,和C++交互也很常用.QT封裝了他,只需要調(diào)用:
QAndroidJniObject::fromString("字符串");


返回一個String對象,使用的時候JNI識別jstring,需要強制轉(zhuǎn)換:
對象.object());??轉(zhuǎn)換成jstring
QtAndroid::androidActivity()??
QtAndroid::androidActivity()?返回當(dāng)前安卓層的Activity對象。
調(diào)用動態(tài)對象的動態(tài)方法:
對象.callMethod("方法名","參數(shù)類型簽名",參數(shù))

例子:調(diào)用安卓窗口中封裝的Toask函數(shù)。

//JAVA層
public?class?QtActivity?extends?Activity
{
....
...
..
void??QMessage(String?s)
????{
????????Toast??toast?=??Toast.makeText(this,?s,?500);
????????toast.show();

????}

}
//C++調(diào)用
?void?MyJni::QMessage(QString?s)
?{

?????QtAndroid::runOnAndroidThread([=](){


?????????QAndroidJniEnvironment???EV;
??????????QAndroidJniObject?activity?=QtAndroid::androidActivity();
?????????QAndroidJniObject?str?=QAndroidJniObject::fromString(s);
??????????activity.callMethod("QMessage","(Ljava/lang/String;)V",str.object());
??????????qDebug()<<"WAIT*****END";

?????});

?}

或使用靜態(tài)方法獲取java對象,然后調(diào)用之:

c++:
?void?MyJni::QMessage(QString?s)
?{
?????QtAndroid::runOnAndroidThread([=](){?
?????????QAndroidJniEnvironment???EV;
?????????QAndroidJniObject?str?=QAndroidJniObject::fromString(s);
??????????QAndroidJniObject?selfobj?=?QAndroidJniObject::callStaticObjectMethod("org/qtproject/qt5/android/bindings/QtActivity",?"getobj");
??????????selfobj.callMethod("QMessage","(Ljava/lang/String;)V",str.object());

?????});

?}
JAVA:
?public?static?QtActivity?selfObj?=null;
????public?QtActivity()
????{
????????selfObj?=?this;
????????m_loader?=?new?QtActivityLoader(this);
????????if?(Build.VERSION.SDK_INT?>=?21)?{
????????????QT_ANDROID_THEMES?=?new?String[]?{"Theme_Holo_Light"};
????????????QT_ANDROID_DEFAULT_THEME?=?"Theme_Holo_Light";
????????}?else?{
????????????QT_ANDROID_THEMES?=?new?String[]?{"Theme_DeviceDefault_Light"};
????????????QT_ANDROID_DEFAULT_THEME?=?"Theme_DeviceDefault_Light";
????????}
????}
public??static??Object?getobj(){
????????return?selfObj;
????}
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

Qt是一款由Qt公司(前身為Trolltech)開發(fā)的跨平臺應(yīng)用程序框架。它提供了豐富的功能,包括圖形用戶界面、數(shù)據(jù)庫操作、網(wǎng)絡(luò)通信等,使得開發(fā)者能夠更加便捷地創(chuàng)建高質(zhì)量、可移植性強的應(yīng)用程序。Qt采用C++編寫,同時也...

關(guān)鍵字: QT RTOS

Python和Java是兩種廣泛應(yīng)用于編程領(lǐng)域的高級編程語言,它們各有優(yōu)劣。本文從程序設(shè)計應(yīng)用、系統(tǒng)資源占用、高性能處理和語言特點等四方面詳細(xì)介紹兩種編程語言的區(qū)別。

關(guān)鍵字: python java 高性能處理

在這篇文章中,小編將為大家?guī)鞪ava接口的相關(guān)報道。如果你對本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: java 接口 Interface

應(yīng)該有不少小伙伴有假期打工的經(jīng)歷,那今天就來給公眾號的讀者朋友們分享一個二哥編程星球里一個球友在富士康打工 50 天的感受,相信大家看完后會深深觸動的。

關(guān)鍵字: 物聯(lián)網(wǎng) java 博客

在過去的幾年中,Python的普及速度令人驚嘆,Java的王者地位也常年不衰。目前兩者的競爭愈發(fā)激烈,怎么選擇成為了許多初學(xué)者縈繞心中的問題,網(wǎng)上有很多版本的說法牽引著他們的思維,讓本來很簡單的問題復(fù)雜化。

關(guān)鍵字: python java

我們都知道,瀏覽一個網(wǎng)頁,有兩個很主要的“電腦”在共同運行,一臺是遠(yuǎn)程的,為你提供網(wǎng)頁數(shù)據(jù)的“服務(wù)器”,一臺是你正在使用的客戶端電腦。

關(guān)鍵字: javascript java

在各種網(wǎng)頁制作技術(shù)論壇中,常常有人詢問javascript與Java有什么區(qū)別,甚至有人誤認(rèn)為javascript就是Java。javascript與Java確實有一定的聯(lián)系,但它們并不像我們想象的那樣聯(lián)系緊密,甚至可以...

關(guān)鍵字: javascript java

對于很多初學(xué)者來講,不太清楚Java和C語言的區(qū)別,為了讓那個大家更清晰的了解,近日特意給大家歸納了一些兩者的大致區(qū)別,希望能夠給大家?guī)硪欢ǖ膸椭饔茫矚g迎大家進行詳細(xì)補充和歸納。

關(guān)鍵字: C語言 java

摘 要 :為解決制鞋行業(yè)中噴膠精度不高、靈活性差、生產(chǎn)效率低的問題,設(shè)計一種基于機器視覺的鞋模噴膠系統(tǒng)。該系統(tǒng)硬件由工業(yè)攝像頭、工控機及路由器構(gòu)成,軟件則采用圖像識別庫 OpenCV 與圖形界面應(yīng)用程序開發(fā)框架 Qt 編...

關(guān)鍵字: 機器視覺 圖像處理 鞋模 噴膠 OpenCV QT

Java封裝案例

關(guān)鍵字: java 實例
關(guān)閉