Qt andiord 如何获取 调用者传来的参数

sunxu0606 2017-08-24 03:01:05
调用者代码:
PackageManager packageManager = getPackageManager();
intent = new Intent();
intent = packageManager.getLaunchIntentForPackage("org.qtproject.example.CA8970");
intent.putExtra("dbpath", "/storage/emulated/0/CA8970-Data/Client");
startActivity(intent);


被调用者代码:
#include "widget.h"
#include <QApplication>
#include <QtAndroid>
#include <QAndroidJniObject>
int main(int argc, char *argv[])
{
QString qstr_param= "";
QAndroidJniObject jstr = QAndroidJniObject::fromString(QString("dbpath"));
QAndroidJniObject active = QtAndroid::androidActivity();
if( active.isValid() )
{
QAndroidJniObject intent = active.callObjectMethod("getIntent","(V)Landroid/content/Intent");
if( intent.isValid())
{
QAndroidJniObject jstr_param = intent.callObjectMethod("getStringExtra","(Ljava/lang/String;)Ljava/lang/String",jstr.object<jstring>());
qstr_param = jstr_param.toString();
}
else
{
qstr_param = QObject::tr("intent 不可用");
}
}
else
{
qstr_param = QObject::tr("active 不可用");
}
QApplication a(argc, argv);
Widget* w = new Widget();

w->show();
return a.exec();
}

Qt这部分代码无法获取到 调用者传来的参数
...全文
203 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

16,203

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧