标题:Qt for Android 调用原生Activity 三步走,开启android的潘多拉世界。
作者:fzw003
日期:2019-12-19 11:59
内容:
花了一天时间开启这个hellowrld.所有的东西都复制黏贴了就是调用不到原生的。哎那些写书的大佬能不能多填点坑,这条路子实在是太艰难了。还没开始就结束了。望而却步。现在就让我把这个小坑填掉吧。
1.android studio 的应用文件拷贝到Qt 工程android目录下
主要有src和res 下的layout //这个也很重要.
2.配置Qt AndroidMainfest.xml 添加注册你自定义的activity例如:
//防止万一吧。
//有遇到问题的细品
3
//这个是拷贝某大佬的代码修改修改。
#define CHECK_EXCEPTION() \
if(env->ExceptionCheck())\
{\
qDebug() ExceptionClear();\
}
void Widget::on_pushButton_clicked()
{
QAndroidJniEnvironment env;
QAndroidJniObject action = QAndroidJniObject::fromString("com.demo.testactivity.MainActivity");
QAndroidJniObject intent("android/content/Intent","(Ljava/lang/String;)V", action.object());
QtAndroid::startActivity(intent, 0);//有遇到问题的细品
CHECK_EXCEPTION()//这里可有可无,但是人家大佬都这么用了。那就加上吧。便于debug
}
走到这里你发现诶怎么qt原生界面无论怎么跳转都跳转不到java的原生界面是不是开始各种怀疑各种骂爹,什么狗屁不通代码,TMD GRD 我要放弃...,android要么原生。什么qt for android 去你麻痹的就是个鸡肋。。。 ..
#1 [liulin188 12-19 17:14]
#2 [zxwmail 12-19 17:42]
#3 [cptdtptp 12-27 09:06]
大佬,有源码分享吗