Skip to content

Instantly share code, notes, and snippets.

@SeeFlowerX
Created March 27, 2023 08:30
Show Gist options
  • Save SeeFlowerX/0fa346eb23394859dd41762e7f590b8b to your computer and use it in GitHub Desktop.
Save SeeFlowerX/0fa346eb23394859dd41762e7f590b8b to your computer and use it in GitHub Desktop.
问题 无法构造参数类型为 java.lang.CharSequence 的对象进行主动调用
function main() {
// hook test
Java.perform(function() {
let Uri = Java.use("android.net.Uri");
let StringCls = Java.use("java.lang.String");
let CharSequence = Java.use("java.lang.CharSequence");
let ClipData = Java.use("android.content.ClipData");
let ClipDataItem = Java.use("android.content.ClipData$Item");
let label = StringCls.$new("hhh");
// 不管转换与否 还是提示重载类型不匹配
label = Java.cast(label, CharSequence);
let item = ClipDataItem.$new(Uri.parse("https://www.baidu.com"));
let mClipData = ClipData.newRawUri(label, item);
console.log("mClipData:" + mClipData);
})
}
setImmediate(main);
// 问题 无法构造参数类型为 java.lang.CharSequence 的对象进行主动调用
// Error: newRawUri(): argument types do not match any of:
// .overload('java.lang.CharSequence', 'android.net.Uri')
@SeeFlowerX
Copy link
Author

item 类型是 uri 搞错了...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment