在Android手机图库中预先内置图片

阅读: 评论:0

在Android手机图库中预先内置图片

在Android手机图库中预先内置图片

  • 在目录packages/apps/Galllery2/res/raw添加图片资源
  • 在目录packages/apps/Gallery2/src/com/android/gallery3d/app/AlbumSetPage.java中添加文件复制方法,用于将raw文件下的图片资源复制到内存SD卡中
    private boolean copyFile(InputStream fis,String des){boolean result=true;FileOutputStream fos=null;try{File fout=new File(des);if(!ists()){fos=new FileOutputStream(fout);byte[] b=new byte[1024];//一张图片的大小不超过1K大小int len;while((len&#ad(b))!=-1){fos.write(b, 0, len);}}}catch(IOException e){e.printStackTrace();result=false;}finally{if(fos!=null){try{fos.close();}catch(IOException e){e.printStackTrace();result=false;}}if(fis!=null){try{fis.close();}catch(IOException e){e.printStackTrace();result=false;}}}return result;
    }

  • 在目录packages/apps/Gallery2/src/com/android/gallery3d/app/AlbumSetPage.java中添加文件扫描方法,用于将复制到SD卡中的图片显示到图库中
    public static final void scanFile(final Context context,final String path){Intent scanIntent=new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);scanIntent.setData(android.Uri.formFile(new File(path)));context.sendBroadcast(scanIntent);
    }

  • 在目录packages/apps/Gallery2/sre/com/android/gallery3d/app/AlbumSetPage.java中的onCreate方法中调用以上方法对资源进行加载
    InputStream p1&#Resources().openRawResource(R.raw.p1);
    copyFile(p1,"/sdcard/Pictures/p1.jpg");
    scanFile(context,"/sdcard/Pictures/p1.jpg");


本文发布于:2024-02-04 11:15:35,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170705925455076.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:图库   手机   图片   Android
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23