对于C++程序员来说使用Qt开发手机app不失为一个好的选择,当Qt不能满足要求时可以调用Android原生代码实现功能,由于Qt的帮助文档有限,相信不少Qt开发者也踩了不少坑
首先创建Qt工程
1.添加Android支持工程pro文件添加
QT += androidextras
2.编写Activity返回值类,派生于
QAndroidActivityResultReceiver,实现返回函数handleActivityResult,通过信号SendData将数据抛出去,代码如下:
ActivityResult .h 文件
#ifndef ACTIVITYRESULT_H
#define ACTIVITYRESULT_H
#include <QAndroidActivityResultReceiver>
class ActivityResult : public QObject,public QAndroidActivityResultReceiver
{
Q_OBJECT
signals:
void sendData(QString);
public:
int requestId;
ActivityResult(int id, QObject *parent = nullptr) : QObject(parent), requestId(id) {}
void handleActivityResult(int receiverRequestCode, in