Unity3d截图保存到Android相册的实现
-----------------------------ultrasoon 季风原创---------------------------------------

1.Unity3d场景中先加入屏幕抓图功能:

Application.CaptureScreenshot("Screenshot.png");

这样Screenshot.png就存到了你的app沙盒中,请检查/sdcard/Android/data/com.ultrasoon.MyApp/,这个是我的app沙盒路径.
这个是第一步,之后还要保存到相册中。

2.unity中点击保存到相册按钮
unity部分代码:

 1 public static AndroidJavaClass plugin;
2
3
4 void Awake ()
5 {
6
7 if(Application.platform == RuntimePlatform.Android ) {
8 plugin = new AndroidJavaClass("com.ultrasoon.MyApp.Binding");
9 }
10 }
11 void OnGUI()
12 {
13 if (GUI.Button(new Rect(20, 20, 100, 5), "save"))
14 {
15 //保存到相册,调用自己写的Binding插件
16 plugin.CallStatic("savebuttonClicked");
17
18 }
19 }

3.Binding插件的实现.import对应的package

Binding.cs部分代码:

 1 public static Context context;
2
3 // 保存到相册
4 public static void savebuttonClicked() {
5
6 //取得你XXXXXXXActivity的context.用自己的,不能用this,插件中调用静态的方法
7 context = XXXXXXXActivity.getApplicationContext();
8
9 XXXXXXXActivity.runOnUiThread(new Runnable() {
10 public void run() {
11 // file:///sdcard/Android/data/com.ultrasoon.MyApp/files/Screenshot.png
12 Bitmap bitmap = Binding
13 .getDiskBitmap("/sdcard/Android/data/com.ultrasoon.MyApp/files/Screenshot.png");
14 if (bitmap != null) {
15
16 MediaStore.Images.Media.insertImage(
17 context.getContentResolver(), bitmap, "myPhoto", "");
18 context.sendBroadcast(new Intent(
19 Intent.ACTION_MEDIA_MOUNTED,
20 Uri.parse("file://"
21 + Environment.getExternalStorageDirectory())));
22 Toast.makeText(
23 context,
24 " 恭喜你!照片已保存到你的相册中! ", Toast.LENGTH_SHORT).show();
25 }
26 }
27 });
28
29 }
30
31 // 读图
32 public static Bitmap getDiskBitmap(String url) {
33
34 Bitmap bitmap = null;
35 try {
36 File file = new File(url);
37 if (file.exists()) {
38 bitmap = BitmapFactory.decodeFile(url);
39
40 }
41 } catch (Exception e) {
42
43 }
44 return bitmap;
45 }

4.编译打包插件Binding,打包成jar,复制到unity的Asserts中下面的plugins目录里面。

OK了。
具体细节希望自己摸索!

-----------------------------ultrasoon 季风原创---------------------------------------

Unity3d截图保存到Android相册的实现的更多相关文章

  1. Android相机、相册获取图片显示并保存到SD卡

    Android相机.相册获取图片显示并保存到SD卡 [复制链接]   电梯直达 楼主    发表于 2013-3-13 19:51:43 | 只看该作者 |只看大图  本帖最后由 happy小妖同学 ...

  2. android如何保存读取读取文件文件保存到SDcard

    android如何保存读取读取文件文件保存到SDcard 本文来源于www.ifyao.com禁止转载!www.ifyao.com 上图为保存文件的方法体. 上图为如何调用方法体保存数据. 上面的截图 ...

  3. [置顶] Android学习系列-把文件保存到SD卡上面(6)

    Android学习系列-把文件保存到SD卡上面(5) 一般多媒体文件,大文件需要保存到SD卡中.关键点如下: 1,SD卡保存目录:mnt/sdcard,一般采用Environment.getExter ...

  4. Android开发调试日志工具类[支持保存到SD卡]

    直接上代码: package com.example.callstatus; import java.io.File; import java.io.FileWriter; import java.i ...

  5. Android—将Bitmap图片保存到SD卡目录下或者指定目录

    直接上代码就不废话啦 一:保存到SD卡下 File file = new File(Environment.getExternalStorageDirectory(), System.currentT ...

  6. Android 程序drawable资源保存到data目录

    今天做了个小功能,就是把我们程序Drawable里面的图片保存到data目录下面,然后另外一个程序需要读取data目录里面保存的图片.涉及了data目录读写.这功能看上去挺简单,不过实际做的时候还是遇 ...

  7. Android 将文件保存到SD卡,从卡中取文件,及删除文件

    //保存到SD卡 private static String sdState = Environment.getExternalStorageState();     private static S ...

  8. Android把图片保存到SQLite中

    1.bitmap保存到SQLite 中 数据格式:Blob db.execSQL("Create table " + TABLE_NAME + "( _id INTEGE ...

  9. Unity调用Android相册

    最近有一个项目有这个需求,让用户上传自己的交易凭证的截图,之前因为对调Android原生的东西不太熟悉,就先放了一边 因为项目已经上线,只不过是该功能未开放而已,那么现在为什么要写这篇博客呢,是因为. ...

随机推荐

  1. C#语言基础02

    字符串:string s="ab";string s1="a\nb";//n:newline或者next的意思. string s="a\\b&quo ...

  2. Heilmeier's criteria

    介绍个Criteria:Heilmeier's criteria 在Alex Smola 的  SML: Scalable Machine Learning 课程网页上看到的,写的非常好. Heilm ...

  3. HW7.16

    import java.util.Arrays; public class Solution { public static void main(String[] args) { int row = ...

  4. ajax 留言板

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. TreeSet介绍

    一.TreeSet原理: 1.TreeSet存储对象的时候, 可以排序, 但是需要指定排序的算法 2.Integer能排序(有默认顺序), String能排序(有默认顺序), 自定义的类存储的时候出现 ...

  6. svn switch relocate用法

    svn info svn info 得到 Path: . Working Copy Root Path: /Users/chunhuizhao/phpworkspace/buptef_wxpay/tr ...

  7. java应用maven插件动态生成webservice代码

    pom.xml如下 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www ...

  8. 再看Core Data中PSC陷入死锁的问题

    在<Core Data Programming Guide>文档的Concurrency with Core Data这一章节中提到了“Use Thread Confinement to ...

  9. 使用Canvas把照片转换成素描画

    原文:http://www.alloyteam.com/2012/07/convert-picture-to-sketch-by-canvas/ 腾讯的alloy team写的一个素描效果,挺不错的. ...

  10. 网页打印时设置A4大小

    最近开发项目时遇到了网页打印的问题,这是问题之二,打印宽度设置 在公制长度单位与屏幕分辨率进行换算时,必须用到一个DPI(Dot Per Inch)指标. 经过我仔细的测试,发现了网页打印中,默认采用 ...