SetDataAndType method
SetDataAndType method
本文关键字:method SetDataAndType 更新时间:2023-10-16
如Android开发者页面中所述,setDataAndType方法可以通过以下方式调用:
auto setDataAndTypeFunctionId = env->GetMethodID(intentClassId, "setDataAndType", "(Landroid/net/Uri;Ljava/lang/String;)V");
jstring jmime = env->NewStringUTF("video/*");
env->CallVoidMethod(context, setDataAndTypeFunctionId, intentObject, UriObject, jmime);
但当我运行我的应用程序时,这个错误显示在输出上:
java.lang.NoSuchMethodError: no method with name='setDataAndType' signature='(Landroid/net/Uri;Ljava/lang/String;)V' in class Landroid/content/Intent;
问题在于返回类型,它不是void。setDataAndType方法返回一个类型为Intent
的对象。
使用以下签名:
env->GetMethodID(intentClassId, "setDataAndType", "(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/Intent;");
此外,您应该使用CallObjectMethod而不是CallVoidMethod,尽管这并不重要,因为您没有使用返回值。
相关文章:
- 通过 get-Method 访问变量在类外不起作用
- 为什么我的 BaseClass:Method 代码编译(带有单冒号)?
- 如何在 c++ 中理解这样的代码 [request->headers().Method()->value().getStringView())]
- g++ [[noreturn]] on a virtual method
- 错误"pure virtual method called",当此方法已被覆盖时
- 如何修复此错误? "Method 'str' could not be resolved"
- 使用 -march 编译会导致线程说"pure virtual method called"
- QMetaObject::invokeMethod: no such method QTextCursor::MoveO
- ":"(单个冒号)在"Klass:method(p)"中是什么意思?
- LuaJIT 和 C++ - 调用 Table.Method() 在 loadstring/pcall 中不起作用
- 如何在源文件中定义类并将其声明在标题文件中(而不必使用`class :: method'语法定义类方法)
- C++ 使用 .chain().method() 链接成员函数 vers ->chained(0->method()
- OpenCV InputArray and getMat method
- Eclipse "implement method"函数不适用于模板类
- Typedef for static method
- cuda convnet equvilent method from opencv gpu::convolve
- (*it)->method() vs (**it).method
- std::stringstream and the str method
- Clang的措辞中"annotated fallthrough"和"partly annotated method"是什么?
- 该术语是否"method"由C++标准定义?