当前位置:首页 » 安卓系统 » 安卓如何保存文件

安卓如何保存文件

发布时间: 2022-04-21 05:34:21

安卓手机到底怎么保存INS里面的图片

安卓手机保存ins照片的详细操作步骤如下,以oppo r15手机为例

第一步:在ins软件中找到需要保存的照片,点击复制链接

⑵ 摇滚罗宾安卓怎么保存

通过把所有文件备份到本地的方式保存。
安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由AndyRubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

⑶ Android:WWW下载下来的文件如何保存

补充下
TPath
是你的保存路径,手机上
需要存的是
P
开头的那个内存卡路径哈~~别弄错了,手机有读写权限限制的

⑷ Android 保存图片到本地。

这里只介绍按下“保存”后如何将一个Bitmap对象保存为图片文件的执行步骤,对图片的下载,图片到Bitmap对象的转换,Bitmap对象的格式转换和压缩,以及界面设计部分全部都忽略了。

  • 确定存储路径

  • 获取外部存储权限

  • 确定外部存储状态

  • 确定文件名

  • 保存到文件中

  • 发送广播,通知系统扫描保存后的文件

  • 确定存储路径

    在Android中文件存储路径包括内部存储和外部存储两种类型。

    对内部存储,当一个app被安装到手机后,Android系统会在内部存储的/data/data/目录下创建一个以包名称命名的文件夹。例如/data/data/com.sohu.inputmethod.sogou/。一个应用对内部存储的所有访问都被限制在这个文件夹中,也就是说Android应用只能在该目录中读取,创建,修改文件。对该目录之外的其他内部存储中的目录都没有任何操作的权限。因此,如果将图片保存在内部存储中,只能被应用自身读取,其他应用均无法读取。如果需要让系统图库,相册或其他应用能够找到保存的图片,必须将图片保存到外部存储中。

    对外部存储,当一个app被安装到手机后,Android系统会在外部存储的/Android/data/目录下创建一个以包名命名的文件夹(这里第一个/不是根路径,而是相对外部存储所挂载路径的相对路径)。例如/storage/emulated/0/Android/data/com.sohu.inputmethod/。这个路径同样只能被应用自身读取,其他应用不能访问。因此,也不能将图片保存在这个目录中。

    除外部存储的/Android目录之外的其他目录一般都是可以被其他应用访问的。目前,大多数应用都会在外部存储的根路径下建立一个类似包名的多层目录,以存储需要共享的文件。例如/storage/emulated/0/sogou/image/。还需要注意的是,很多查看图片的应用都支持按照文件夹来查看图片。如果将图片所在的文件夹取名为image,photo之类的,就无法和其他文件夹区分开,用户也不能识别该文件夹的用途。因此最好取一个有区分度的文件夹名字,例如网络贴吧就保存在/tieba目录,微信是保存在/tencent/MicroMsg/WeiXin目录。

    由于Android系统的碎片化问题,不同设备上外部存储的路径很可能会不同,因此,不能直接使用/storage/emulated/0/作为外部存储的根路径。
    Android SDK中 Environment类 提供了getExternalStorageDirectory()方法来获取外部存储的根路径。示例如下:

    [java]view plain

  • Stringdir=Environment.getExternalStorageDirectory().getAbsolutePath()+"/tencent/MicroMsg/WeiXin/"

  • 需要注意的是Environment.getExternalStorageDirectory()返回的路径中最后一个字符不是/,如果需要创建子目录,需要在子目录的前后都加上/。

    获取外部存储权限

    由于需要在外部存储中写文件,需要在AndroidManifest.xml中增加如下的权限声明。

    [java]view plain

  • <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

  • 确定外部存储状态

    由于外部存储需要被挂载,也可以被卸载,在写入文件之前,需要先判断外部存储的状态是否正常。只有状态正常情况下才可以执行保存文件的操作。获取外部存储状态同样是通过Environment类,通过Environment.getExternalStorageState()可以得到一个字符串,来表示外部存储的状态。同时在Environment类中定义了一系列的String常量表示不同的状态。在所有的状态中只有内部存储处于Environment.MEDIA_MOUNTED状态时才可以读写文件,因此,需要将获取到的状态和Environment.MEDIA_MOUNTED做比较,如果不是Environment.MEDIA_MOUNTED状态,就返回保存失败。示例如下。

    [java]view plain

  • //获取内部存储状态

  • Stringstate=Environment.getExternalStorageState();

  • //如果状态不是mounted,无法读写

  • if(!state.equals(Environment.MEDIA_MOUNTED)){

  • return;

  • }



  • 确定文件名

    保存的图片文件名可以由应用根据自身需要自行确定,一般来说需要有一个命名规则,然后根据命名规则计算得到文件名。
    这里列举几种常见的命名规则。

  • 随机命名
    这种命名规则是随机生成一个字符串或一组数字来对图片命名。
    字符串可以通过UUID来生成,数字可以通过Random()类来生成,例如:

    [java]view plain

  • //通过UUID生成字符串文件名

  • StringfileName1=UUID.randomUUID().toString();

  • //通过Random()类生成数组命名

  • Randomrandom=newRandom();

  • StringfileName2=String.valueOf(random.nextInt(Integer.MAX_VALUE));

  • 这种命名规则是按照数字从小到大的顺序来对图片命名。
    在程序启动时先获取图片文件名中当前最大数字的文件名,之后每保存一张图片就将数字加1即可。

  • 时间命名
    这种命名规则是根据保存图片的当前系统时间来对图片命名。
    系统时间可以通过System.currentTimeMillis()来获取,不过System.currentTimeMillis()获取到的时间是一个long型的整数,如果用它做文件名,无法通过文件名直接看出文件的具体保存时间。可以通过SimpleDateFormat先对当前时间做格式化,然后再将其作为文件名来使用。例如:

    [java]view plain

    使用这种命名规则来命名需要注意的是同一秒钟可能会有多张图片需要保存,在得到当前系统时间对应的文件名后,需要判断该文件是否存在。如果文件已经存在,需要重新生成文件名。重新生成的文件名可以在之前的文件名后加上一个随机数后缀,或者是用毫秒数做后缀。

  • Calendarnow=newGregorianCalendar();

  • SimpleDateFormatsimpleDate=newSimpleDateFormat("yyyyMMddHHmmss",Locale.getDefault());

  • StringfileName=simpleDate.format(now.getTime());

  • 文件URL命名
    每张网络图片都有一个对应的图片URL,可以根据图片的URL来对图片命名。
    不过URL中会包含一些不能用作文件名的特殊字符,此外直接用URL来命名可能会带来安全问题。为了避免这两个问题,可以将图片URL的MD5值作为文件名来使用。由于MD5是不可逆的,也就无法通过MD5值反向得到图片URL,同时MD5值对应的字符串只包含[0-9A-Z],不包含特殊字符,可是作为文件名使用。
    由于每张图片的URL是唯一的,其对应的文件名也就是唯一的。如果需要每张网络图片只能生成一个文件,不允许保存为多份拷贝,可以用这种命名规则。在得到URL对应的文件名后,先判断文件是否已经存在,如果已经存在,直接覆盖或不处理。

  • 保存到文件中

    保存图片文件时,通过Bitmap的compress()方法将Bitmap对象压缩到一个文件输出流中,然后flush()即可。示例如下。

    [java]view plain

  • try{

  • Filefile=newFile(dir+fileName+".jpg");

  • FileOutputStreamout=newFileOutputStream(file);

  • mBitmap.compress(Bitmap.CompressFormat.JPEG,100,out);

  • out.flush();

  • out.close();

  • }catch(Exceptione){

  • e.printStackTrace();

  • }



  • 发送广播,通知系统扫描保存后的文件

    至此,已经实现将Bitmap对象保存成外部存储中的一个jpg格式的文件。但此时该文件只是保存在外部存储的一个目录中,必须进入其所在的目录中才可以看到。在系统图库,相册和其他应用中无法看到新建的图片文件。为了让其他应用能够知道图片文件被创建,必须通知MediaProvider服务将新建的文件添加到图片数据库中。

    Android系统中常驻一个MediaProvider服务,对应的进程名为android.process.media,此服务用来管理本机上的媒体文件,提供媒体管理服务。在系统开机或者收到外部存储的挂载消息后,MediaProvider会调用MediaScanner,MediaScanner会扫描外部存储中的所有文件,根据文件类型的后缀将文件信息保存到对应的数据库中,供其他APP使用。

    MediaScannerReceiver是一个广播接收者,当它接收到特定的广播请求后,就会去扫描指定的文件,并根据文件信息将其添加到数据库中。当图片文件被创建后,就可以发送广播给MediaScannerReceiver,通知其扫描新建的图片文件。示例如下。

    [java]view plain

  • try{

  • Filefile=newFile(dir+fileName+".jpg");

  • FileOutputStreamout=newFileOutputStream(file);

  • mBitmap.compress(Bitmap.CompressFormat.JPEG,100,out);

  • out.flush();

  • out.close();

  • //保存图片后发送广播通知更新数据库

  • Uriuri=Uri.fromFile(file);

  • sendBroadcast(newIntent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,uri));

  • }catch(Exceptione){

  • e.printStackTrace();

  • }



  • 图片的异步保存

    保存图片文件时,如果图片很大,或需要同时保存多张图片时,就需要较多的时间。为了避免阻塞UI线程,出现帧率下降或ANR,通常需要将图片保存操作放到线程中去执行。当图片保存完毕后通过sendMessage()方法通知UI线程保存结果。
    将图片保存放到后台线程去执行需要增加一些同步机制避免一些多线程问题。例如有两张图片需要保存,分别放到两个线程中去执行,保存图片时文件名以数字顺序增加。第一个线程选中文件名为125.jpg,但此时文件还未创建,第二个线程判断125.jpg不存在,于是也选取125.jpg作为文件名,两张图片就保存到同一个文件中了。

⑸ 安卓的平板 怎么保存文件

安卓的平板保存文件一种存在内部存储器。另一种存在存储卡上,也可以点击文件另存为桌面快捷方式。

默认存储位置改为内存卡,不过需要使用高速内存卡,不然可能会比较卡顿还有应用加载会慢。

机器特点

华为平板系列支持GPUTurbo3.0技术,增加了对常见游戏的优化支持,现场试玩了吃鸡类游戏,堡垒前线,游戏分辨率达到了2K级别,整体流畅度不错,几乎没有出现卡顿现象,8.4英寸版本大小更适合玩游戏。

影音方面,华为平板M610.8英寸加入了四声道立体声,同时定制大振幅四立体声扬声器,在支持杜比视听的视频客户端中,声场很饱满,低频部分也表现不错,同时,10.8英寸配合智能语音底座可以瞬间变成一款智能音箱,通过智能助手小艺,可以支持控制智能家居、听音乐放电影等功能。

华为平板10.8英寸支持磁吸键盘,同时还加入了电脑模式和M,Pen,lite手写笔功能,能够满足基本的文字编辑,8.4英寸内置6100毫安电池,10.8英寸内置7500毫安时电池,并支持18W快充,外出一天使用基本没什么问题。

⑹ 安卓手机的文件夹包括手机聊天记录文件、音乐、视频、照片、app软件,全部怎样传输到u盘里保存呢

打开手机文件管理,点击【本地】文件;点击【内部存储】;接着打开【MicroMsg】,找到包含32位字符的文件,点击其中任何这类文件夹;image2是存放微信聊天的图片,video则小视频的存储文件夹。具体介绍如下:

1、打开手机文件管理,点击【本地】文件,打开手机的【内部存储】;

2、找到【tencent】-【MicroMsg】文件夹,接着点击打开这个文件夹;

3、这里有很多文件,里面有一个或者多个由一长串数字和字母组成的文件夹,与该手机登录过的微信账号一一对应,这是一个包含32位字符的文件,点击打开其中的这个文件夹;

4、打开后会发现还是有很多文件夹,其中有image、emoji等就是分别存放不同类别文件;

5、image文件夹是微信自带的一些图片存储在里面 ,还有一个image2是存放在微信聊天过程中的图片;

6、此外,微信聊天中小视频储存在video文件夹,audio是语音消息存放的地方。

⑺ 苹果发的文件安卓手机怎么保存

咨询记录 · 回答于2021-11-25

⑻ 安卓机微信保存的文件在哪里

如果您使用的是vivo手机,辛苦您按照以下方法查看:
文件管理版本V5.5.2.9以下(安卓8.1及以上机型):微信新版本更改了文件保存目录,请您进入文件管理--手机存储/所有文件/本地文件/SD卡Android/data/com.tencent.mm/MicroMsg/Download中进行查看,后续文件管理更新会进行优化,届时可在文件管理--微信分类下进行查看。
备注:文件管理V5.5.2.9开始即可在微信分类中显示。
文件管理版本V5.5.2.9以下(安卓8.1以下机型):文件管理分类下不支持显示。
微信新版本更改了文件保存目录,请您进入文件管理--手机存储/所有文件/本地文件/SD卡--Android/data/com.tencent.mm/MicroMsg/Download中进行查看。
微信文件的保存路径如下:
1、进入文件管理--微信中查看最近传输的文件;
2、进入文件管理--本地文件/所有文件/SD卡/手机存储--tencent--MicroMsg--WeiXin或第一个文件夹中查找;
3、进入文件管理--本地文件/所有文件/SD卡/手机存储--Android--data--com.tencent.mm--MicroMsg--Download中查看。

⑼ 安卓保存文件时间

内部存储:
始终存在可用;
保存的文件默认只能被保存文件的app访问,各个应用之间不可以彼此访问,只能访问自己保存的文件。
当应用被卸载的时候应用保存的文件会被完全清除掉;
如果你想要保存的文件很安全,不会被用户和其他应用读取到,那么你可以选择内部存储这种方式。
外部存储:
不一定存在,比如有的手机出厂是只有内部存储,没有外部存储,用户自己又没有安装micro-SD卡,这时外部存储是不可用的;
读写完全开放的,所以你保存的数据可能会被用户和可其它程序读取;
卸载应用时只会删除通过getExternalFilesDir()获取到的目录文件;
如果你的文件没有必要控制访问权限,可以允许其它应用或者用户查看,那么外部存储是不错的选择;

热点内容
脏小豆服务器怎么加入 发布:2024-05-08 04:40:40 浏览:550
万立存储介质 发布:2024-05-08 04:33:02 浏览:636
ftppro特效复制方法 发布:2024-05-08 04:06:05 浏览:926
平板电脑编译软件 发布:2024-05-08 04:05:46 浏览:478
荣耀v6平板扩展存储 发布:2024-05-08 03:41:12 浏览:423
安卓手机为什么半年一更新 发布:2024-05-08 03:36:52 浏览:660
存储设备报价 发布:2024-05-08 02:22:01 浏览:554
定步长的算法 发布:2024-05-08 02:16:18 浏览:110
怎么使用pe口袋服务器 发布:2024-05-08 02:02:18 浏览:471
xml数据库c 发布:2024-05-08 02:01:46 浏览:456