Activity直接传值的一种方法,或者不同应用之间使用。
一:传递简单的数据
- ClipboardManager clipboardManager = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
- clipboardManager.setText(base64String);
- String s = clipboardManager.getText.toString();
二:传递对象
- //将对象转换成字符串
- ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
- String base64String = "";
- try {
- ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream);
- objectOutputStream.writeObject(对象);
- //使用Android中提供的 Base64 工具类,这个类主要是用来对对象进行压缩也解码的过程,使用默认方式
- base64String = Base64.encodeToString(byteArrayOutputStream.toByteArray(), Base64.DEFAULT);
- objectOutputStream.close();
- } catch (Exception e) {
- // TODO: handle exception
- }
- ClipboardManager clipboardManager = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
- clipboardManager.setText(base64String);
- //将字符串 msgString 还原为对象
- byte[] base64_byte = Base64.decode(msgString, Base64.DEFAULT);
- ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(base64_byte);
- try {
- ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
- MyData myData = (对象)objectInputStream.readObject();
- } catch (Exception e) {
- // TODO: handle exception
- }