美文网首页
Unity Android&iOS 复制到粘贴板

Unity Android&iOS 复制到粘贴板

作者: CERI_CHANNEL | 来源:发表于2022-07-17 10:00 被阅读0次

Android

@TargetApi(11)
@SuppressLint({"NewApi"})
// 保存至粘贴板
public static void copyTextToClipboard(final Context activity, final String str) throws Exception  {
    ClipboardManager clipboard =(ClipboardManager)context.getSystemService(context.CLIPBOARD_SRVICE);
    ClipData textCd = ClipData.newPlainText("data" , str);
    clipboard.setPrimaryClip(textCd);
}

@TargetApi(11)
@SuppressLint({"NewApi"})
// 获取粘贴板内容
public static String GetClipboard(Activity context) {
    ClipboardManager clipboard =(ClipboardManager)context.getSystemService(context.CLIPBOARD_SRVICE);
    String result = "";
    if (clipboard.hasPrimaryClip() &&clipboard.getPrimaryClipDescription().hasMimeType(ClipDescripton.MIMETYPE_TEXT_PLAIN)) {
        ClipData cdText = clipboard.getPrimaryClip();
        ClipData.Item item = cdText.getItemAt(0);
        result = item.getText().toString();
    }
    return result;
}

iOS

#define MakeStringCopy( _x_ ) ( _x_ != NULL && [_x_ isKindOfClass:[NSString class]] ) ? strdup( [_x_ UTF8String] ) : NULL
extern "C"
{
    // 保存至粘贴板
    void _SaveToClipboard(char* text)
    {
        UIPasteboard* pasteboard = [UIPasteboard generalPasteboard];
        pasteboard.string = [NSString stringWithUTF8String:text];
    }
    
    // 获取粘贴板内容
    char* _GetClipboardText()
    {
        NSString* content = [[UIPasteboard generalPasteboard] string];
        return MakeStringCopy(content);
    }
}

相关文章

网友评论

      本文标题:Unity Android&iOS 复制到粘贴板

      本文链接:https://www.haomeiwen.com/subject/inirirtx.html