1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > android读取剪切板的方法 Android复制粘贴剪切板内容的一种方法

android读取剪切板的方法 Android复制粘贴剪切板内容的一种方法

时间:2022-03-19 17:25:09

相关推荐

android读取剪切板的方法 Android复制粘贴剪切板内容的一种方法

1 Clipper介绍

Clipper是一款简单的app, 它可以通过一行adb shell命令来和安卓系统剪切板服务交互。

官方说明:/majido/clipper

2 App下载

3 使用方法

安装App

启动广播服务

adb shell am startservice ca.zgrs.clipper/.ClipboardService

get方法:print the value in clipboard into logs

am broadcast -a clipper.get

set方法:sets the clipboard content to the string passed via extra parameter "text"

am broadcast -a clipper.set -e text "this can be pasted now"

4 appium中使用的一个例子

某个安卓手机先安装Clipper.apk

然后开启广播

//执行shell命令开启android广播服务

Process process = Runtime.getRuntime().exec("adb -s "+udid+" shell am broadcast -a clipper.get");

InputStream is=process.getInputStream();

InputStreamReader isr= new InputStreamReader(is, "utf-8");

BufferedReader br= newBufferedReader(isr);

String urlStr="";

String line="";while ((line = br.readLine()) != null) {

urlStr+=line;

}

if(urlStr.contains("result=0")){

Runtime.getRuntime().exec("adb -s "+udid+" shell am startservice ca.zgrs.clipper/.ClipboardService");

}

其中如果有多台手机,udid为事先定义的设备名称

capabilities.setCapability("deviceName", udid);

若某个url信息已在剪切板中,获取页面url地址

private String getUrl() throwsIOException{

String url="";

BufferedReader br=null;try{

Process process= Runtime.getRuntime().exec("adb -s "+udid+" shell am broadcast -a clipper.get");

InputStream is=process.getInputStream();

InputStreamReader isr= new InputStreamReader(is, "utf-8");

br= newBufferedReader(isr);

}catch(Exception e){

System.out.println("广播服务出现异常");

}try{

String urlStr="";

String line="";while ((line = br.readLine()) != null) {

urlStr+=line;

}

String[] s=null;

if(urlStr.contains("data=\"")){

s=urlStr.split("data=\"");

}else{

System.out.println("请启动广播服务");

}

url=s[1].toString().trim().substring(0, s[1].length()-1);

}catch(Exception e){

System.out.println("剪切板获取url异常");

}

br.close();returnurl;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。