详细问题描述
[内容]
重现步骤
[步骤]
var copyToClip = function(textValue) {
if (mui.os.android) {
var Context = plus.android.importClass("android.content.Context");
var main = plus.android.runtimeMainActivity();
var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);
console.log(clip);
console.log(main);
plus.android.invoke(clip, textValue);
// plus.android.invoke(clip, textValue, "I'm copy from Native.js");
} else {
var UIPasteboard = plus.ios.importClass("UIPasteboard");
//这步会有异常因为UIPasteboard是不允许init的,init的问题会在新版中修改
var generalPasteboard = UIPasteboard.generalPasteboard();
// 设置/获取文本内容:
generalPasteboard.setValueforPasteboardType(textValue, "public.utf8-plain-text");
}
mui.alert('复制成功!', '', function() {});
};
[结果] ```javascript
Uncaught Attempt to invoke virtual method 'java.lang.Class java.lang.reflect.Method.getReturnType()' on a null object reference;at android.content.ClipboardManager.1234556
[期望] 将文本成功复制到 剪贴板
运行环境
[系统版本] 安卓7.0 EMUI5.0 华为 P9
[浏览器版本]
[IDE版本] 8.0.2.201703061842
[mui版本]
附件
[代码片段]
```javascript
var copyToClip = function(textValue) {
if (mui.os.android) {
var Context = plus.android.importClass("android.content.Context");
var main = plus.android.runtimeMainActivity();
var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);
console.log(clip);
console.log(main);
plus.android.invoke(clip, textValue);
// plus.android.invoke(clip, textValue, "I'm copy from Native.js");
} else {
var UIPasteboard = plus.ios.importClass("UIPasteboard");
var generalPasteboard = UIPasteboard.generalPasteboard();
// 设置/获取文本内容:
generalPasteboard.setValueforPasteboardType(textValue, "public.utf8-plain-text");
}
mui.alert('复制成功!', '', function() {});
};
[安装包]
联系方式
[QQ]
[电话]
2 个回复
j***@163.com - 90IT女
传入的textValue为数字时会报这个,为字符串时是正常的.
[已删除]
大神,我也遇到这个错了,你怎么解决的?
j***@163.com
把复制类型转到字符串就可以了
2019-09-19 17:06