关闭

unity中调用android的剪切板

标签: unityandroid
318人阅读 评论(0) 收藏 举报
分类:

1.首先新建一个android工程,ClipboardTools类不用继承任何类,包名com.androidclicp.clip,然后在该类中填写如下代码(jdk等级4.0版本以上,不然会报错)


public class ClipboardTools {
public static ClipboardManager clipboard = null;

// 向剪贴板中添加文本
public void copyTextToClipboard(final Context activity, final String str) throws Exception
{
if(Looper.myLooper() == null)
{
Looper.prepare();
}
Handler handler = new Handler();
clipboard = (ClipboardManager) activity.getSystemService(Activity.CLIPBOARD_SERVICE);
ClipData textCd = ClipData.newPlainText("data", str);
clipboard.setPrimaryClip(textCd);
handler.getLooper().quit();
}

// 从剪贴板中获取文本
public String getTextFromClipboard() {

if (clipboard != null && clipboard.hasPrimaryClip()
&& clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {
ClipData cdText = clipboard.getPrimaryClip();
ClipData.Item item = cdText.getItemAt(0);
return item.getText().toString();

}
return "null";
}
}

写完就ok了,然后把该工程导出jar包,只需要导出你所写的这个类就可以了

2.然后在unity工程中新建一个Plugins/Android/bin, 然后把你所写的jar包导入即可,在unity新建一个脚本,来使用jar包中的东西,

此时只写功能函数,具体脚本不写了,如下:


#if UNITY_ANDROID
AndroidJavaObject androidObject = new AndroidJavaObject("com.androidclicp.ClipboardTools");
AndroidJavaObject activity = new AndroidJavaClass("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject>("currentActivity");
if (activity == null)
return;
// 复制到剪贴板
androidObject.Call("copyTextToClipboard", activity, qq.text);
// 从剪贴板中获取文本
string text = androidObject.Call<string>("getTextFromClipboard");
Debug.Log(text + "------------------------");
#endif

导进去的报名com.androidclicp.clip是指你android工程中的报名,而不是你导出之后自己定义的那个包名,这个包名是随便去的,unity中引用的还是android中的包名,具体讲就是你写的那个android脚本的命名空间。

3,使用unity发布andrid版本的时候也要在设置中改一下最小sdk版本,这样就ok了,源代码demo网盘链接http://pan.baidu.com/s/1gfyUV3X

0
0
查看评论

unity调用Android剪切板基于Android studio

参考博客 http://www.cnblogs.com/xiaozefeng/p/Unity_Android_IOS.html?utm_source=tuicool&utm_medium=referral 我参照 枫露霜阳 大牛的博客分别实现了两种调用方法,不过由于版本更新有些代码...
  • qq_30518805
  • qq_30518805
  • 2016-06-24 10:37
  • 1550

unity调用ios的剪贴板

参考博客 http://www.cnblogs.com/xiaozefeng/p/Unity_Android_IOS.html?utm_source=tuicool&utm_medium=referral 本文基于unity 5.3.5 xcode 7.3  我参照 枫...
  • qq_30518805
  • qq_30518805
  • 2016-06-28 15:50
  • 1360

Unity调用Android打包的Jar文件中的函数

在Unity中如果要调用java中的函数从而控制Android手机的相关功能,在Unity中调用jar文件较为简单,只需要几行代码即可搞定。代码如下: AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityP...
  • beihuanlihe130
  • beihuanlihe130
  • 2016-06-23 00:01
  • 233

【Unity3d】在Unity3d中,使用C#中访问系统剪贴板

直接上代码 public static class ClipboardHelper { private static PropertyInfo m_systemCopyBufferProperty = null; private static PropertyInfo GetSyst...
  • u011355822
  • u011355822
  • 2015-06-27 14:51
  • 1664

Unity3D 调用Android与IOS的剪贴板

Unity3D剪贴板 最近遇到一个需要调用Android与IOS设备本身剪贴板的需求,就是在Unity中,要将文本复制到设备本身的剪贴板中,然后在其他应用程序中都能粘贴。 最开始在网上查到的方式是使用Unity3D本身自带的TextEditor 类进行使用,使用方法如下: TextEd...
  • cen616899547
  • cen616899547
  • 2016-06-08 14:33
  • 1096

unity 读取PC剪贴板(粘贴板)的数据缓存

平台:unity5.5.0 系统:win10 public class Test : MonoBehaviour {     void Start()     {         string str = GU...
  • z286254418
  • z286254418
  • 2017-06-06 17:36
  • 639

Android剪切板设置和读取字符串String 关键代码

总结关键代码: 1.将string型设置到剪切板 //设置剪切板数据     ClipboardManager clipboardManager = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE); ...
  • woshilanbo1205
  • woshilanbo1205
  • 2014-03-22 18:20
  • 3512

Unity使用Android系统剪贴板复制&粘贴

Unity移动应用中,默认情况下只有在InputField输入文本时可以使用系统剪贴板(ex.吐槽下Unity引擎键盘的Layout十分不人机)。 如果有类似选中某个文本,复制其中内容的需求,就要使用原生插件来提供这个方法了。如: 开发原生插件的流程应该已经有很多教程了,这个不再重复,直接贴Jav...
  • mseol
  • mseol
  • 2017-11-13 11:58
  • 561

Android、IOS 获取剪切板内容

ClipboardManager clipboardManager; String tempStr; public String GetClipBoardContent() { runOnUiThread(new Runnable() { @Override publi...
  • cp790621656
  • cp790621656
  • 2014-03-01 14:03
  • 5394

Android实现文本复制到剪切板功能(ClipboardManager)

Android也有剪切板(ClipboardManager),可以复制一些有用的文本到剪贴板,以便用户可以粘贴的地方使用,下面是使用方法 注意:导包的时候 API 11之前: android.text.ClipboardManager API 11之后: android.content.C...
  • FL1623863129
  • FL1623863129
  • 2017-06-11 07:48
  • 918
    个人资料
    • 访问:2745次
    • 积分:123
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:3篇
    • 译文:0篇
    • 评论:0条
    文章分类