uiapp 设置剪切板及获取监听版内容

1.官方提供设置系统剪贴板的方法

uni.setClipboardData({
    
    
	data: 'hello',
	success: function () {
    
    
		console.log('success');
	}
});

对我来说这个还不是不错可以使用
2.官方 获取系统剪贴板内容。

uni.getClipboardData({
    
    
	success: function (res) {
    
    
		console.log(res.data);
	}
});

如果是通过官方提供的 uni.setClipboardData 设置的内容可以获取到,但是如果是从其他地方复制的 都拿不到。果断放弃

3.使用Native.js 去获取系统剪贴板内容 这个比较好用 也可以监听到其他地方复制的内容,但是只支持app

//安卓
 function copyToClip(){
    
      
        var Context = plus.android.importClass("android.content.Context");  
        var main = plus.android.runtimeMainActivity();  
        var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);  
        return plus.android.invoke(clip,"getText");  
    }

4.使用Native.js 去设置系统剪贴板内容 ,但是只支持app

function copyToClip(){
    
      
    var Context = plus.android.importClass("android.content.Context");  
    var main = plus.android.runtimeMainActivity();  
    var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);  
    plus.android.invoke(clip,"setText","I'm copy from Native.js");  
}

项目中遇到记录下

5.ios 未测试

var UIPasteboard  = plus.ios.importClass("UIPasteboard");  
var generalPasteboard = UIPasteboard.generalPasteboard();  
// 设置/获取文本内容:  
generalPasteboard.setValueforPasteboardType("testValue", "public.utf8-plain-text");  
var value = generalPasteboard.valueForPasteboardType("public.utf8-plain-text");   

猜你喜欢

转载自blog.csdn.net/weixin_41688609/article/details/130199132