unity Android 剪贴板,unity调用系统剪切板功能

packagecom.game.utils;importandroid.app.Activity;importandroid.content.ClipData;importandroid.content.ClipDescription;importandroid.content.ClipboardManager;importandroid.content.Context;importandroid.os.Handler;importandroid.os.Looper;importjava.io.ByteArrayOutputStream;importjava.io.IOException;importjava.io.InputStream;importjava.net.NetworkInterface;importjava.util.Collections;importjava.util.List;public classGameUtils {public byte[] ReadBytes(Activity activity, String path)

{

InputStream is= null;try{

is=activity.getAssets().open(path);

}catch(IOException e){

e.printStackTrace();

}

ByteArrayOutputStream outputStream= newByteArrayOutputStream();byte buf[] = new byte [1024];intlen;try{while ((len = is.read(buf)) != -1) {

outputStream.write

(buf,0, len);

}

outputStream.close();

is.close();

}catch(IOException e) {

e.printStackTrace();

}returnoutputStream.toByteArray();

}public static ClipboardManager clipboard = null;//向剪贴板中添加文本

public void copyTextToClipboard(final Context activity, final String str) throwsException {if(Looper.myLooper() == null)

{

Looper.prepare();

}

Handler handler= newHandler();

clipboard=(ClipboardManager) activity.getSystemService(Activity.CLIPBOARD_SERVICE);if (clipboard != null && clipboard.hasPrimaryClip() &&clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {

ClipData textCd= ClipData.newPlainText("data", str);

clipboard.setPrimaryClip(textCd);

}

handler.getLooper().quit();

}//从剪贴板中获取文本

public String getTextFromClipboard(final Context activity) throwsException {if(Looper.myLooper() == null)

{

Looper.prepare();

Looper.myLooper();

}

StringBuilder res1= newStringBuilder();//Handler handler = new Handler();

clipboard =(ClipboardManager) activity.getSystemService(Activity.CLIPBOARD_SERVICE);//if (clipboard != null && clipboard.hasPrimaryClip() && clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {

if (clipboard != null &&clipboard.hasPrimaryClip()) {

ClipData cdText=clipboard.getPrimaryClip();

ClipData.Item item= cdText.getItemAt(0);

res1.append(item.getText().toString());

}else{

res1.append("no key");

}//handler.getLooper().quit();

returnres1.toString();

}/*** 获取MAC地址

*@return

*/

public String getAndroidMac(finalContext activity) {try{

List all =Collections.list(NetworkInterface.getNetworkInterfaces());for(NetworkInterface nif : all) {if (!nif.getName().equalsIgnoreCase("wlan0")) continue;byte[] macBytes =nif.getHardwareAddress();if (macBytes == null) {return null;

}

StringBuilder res1= newStringBuilder();for (byteb : macBytes) {

res1.append(String.format("%02X:", b));

}if (res1.length() > 0) {

res1.deleteCharAt(res1.length()- 1);

}returnres1.toString();

}

}catch(Exception ex) {

ex.printStackTrace();

}return null;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值