存储介绍: Android系统分为内部存储和外部存储,内部存储是手机系统自带的存储,一般空间都比较小,外部存储一般是SD卡的存储,空间一般都比较大,但不一定可用或者剩余空间可能不足.一般我们存储内容都会放在外部存储空间里.使用过程注意事项: 先判断SD卡是否可用,可用时优先使用SD卡的存储,不可用时用内部存储 存储在SD卡上时,可以在SD卡上新建任意一个目录存放,也可以存放在应用程序内部文件夹,区别是在SD卡的任意目录存放时内容不会随应用程序的卸载而消失,而在应用程序内部的内容会随应用程序卸载消…
存储介绍 Android系统分为内部存储和外部存储,内部存储是手机系统自带的存储,一般空间都比较小,外部存储一般是SD卡的存储,空间一般都比较大,但不一定可用或者剩余空间可能不足.一般我们存储内容都会放在外部存储空间里.使用过程注意事项: 先判断SD卡是否可用,可用时优先使用SD卡的存储,不可用时用内部存储 存储在SD卡上时,可以在SD卡上新建任意一个目录存放,也可以存放在应用程序内部文件夹,区别是在SD卡的任意目录存放时内容不会随应用程序的卸载而消失,而在应用程序内部的内容会随应用程序卸载消失…
前几天和朋友聊到了APP清除数据这块,聊到了清除数据都会清掉哪些数据,我们每个人的手机在”设置–>应用管理”里面,选择任意一个App,都会看到两个按钮,一个是清除缓存,另一个是清除数据,那么当我们点击清除缓存的时候清除的是哪里的数据?当我们点击清除数据的时候又是清除的哪里的数据?今天在这里验证一下. 在学习之前我们首先要搞懂内存.内部存储.外部存储的概念,内存,我们在英文中称作memory,内部存储,我们称为InternalStorage,外部存储,我们称为ExternalStorage,他们的…
前言 前两天因为开发一个app更新的功能,我将从服务器下载的apk文件放在了内部存储目录(测试手机为小米,路径为:data/user/0/packagename/files)下面,然后安装的时候一直安装不了,提示解析包出错.后来查询发现,安装apk是调用了PackageInstaller,没有相关权限,这个无法获取内部路径,所以会安装不了.借机也复习了一遍Android下面存储相关的知识点,特来总结一番. 存储分类 对于Android存储目录,我总结成一张思维导图,如果有需要原图的,请在我的公众…
Android存储访问及目录 Android的外部存储 Android支持外部存储(case-insensitive filesystem with immutable POSIX permission classes and modes). 外部存储可以通过物理介质提供(如SD卡),也可以通过将内部存储中的一部分封装而成,设备可以有多个外部存储实例. 访问外部存储的权限 从Android 1.0开始,写操作受权限WRITE_EXTERNAL_STORAGE保护. 从Android 4.1开始,…
在了解存储路径之前,先来看看Android QQ的文件管理界面,了解一下QQ的数据文件路径来源,到底是来源于什么地方? 手Q文件管理对应存储目录 我的文件:是指放在QQ指定目录下的文件:/tencent/QQfile_recv/(顺便说一下微信的存储目录:/tencent/MicroMsg/Download/) 手机内存:其实是内部存储的根目录,在ES文件浏览器对应的是根目录,路径为:Environment.getDataDirectory().getParentFile() SD卡:这里的SD…
本文出自:http://blog.csdn.net/dt235201314/article/details/73176149 源码下载欢迎Star(updating):https://github.com/JinBoy23520/CoderToDeveloperByTCLer 一丶慨述 本周的学习内容是Android存储,要求:数据库Sqlite相关操作,常用的文件存取方式,以及实用场景学习,主要学习Sqlite,SD卡文件操作,SharedPreference 二丶效果演示:         …
pc端和android端应用程序测试有什么区别?(ps面试题) [VIP7]大连-凭海临风(215687736) 2014/4/10 8:56:171.测试环境不同PC平台一般都是windows android客户端 一般都在android环境 2.测试方法不同pc平台客户端 一般可以通过自动化工具进行测试android客户端 测试一般通过命令行 测试(monkey命令行,原理:通过shell指令和linux内核进行交互)…
转载: http://www.myexception.cn/android/1968332.html android中activity.this和getApplicationContext的区别 在android中常常会遇到与context有关的内容 浅论一下context : 在语句 AlertDialog.Builder builder = new AlertDialog.Builder(this); 中,要求传递的 参数就是一个context,在这里我们传入的是this,那么这个this究…
Android存储之SQLite数据库数据库 创建数据库 package --; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * Created by kongqw on 2015/11/22. */ public class SearchRecordOpenHelper ext…
作为一个开发者,我们经常需要通过缓存一些文件到SD卡中,常见的方式就是,通过: File sdCard = Environment.getExternalStorageDirectory(); 获取SD卡根目录,然后自定义文件/文件名进行文件存储.这样做法的结果就是,当手机安装了大量的app时, SD卡根目录会迅速变得杂乱不堪.并且在API 6.0之后,根目录文件存储是需要用户授权的,就算你在 AndroidManifest.xml中配置了存储权限,用户不授权也是写不进去了. SD卡读写权限:…
转载地址:https://blog.csdn.net/nugongahou110/article/details/48154859 之前看到一位网友的吐槽:当我把手机连接到电脑上时,在SD卡根目录看到了成百上千个各种应用程序创建的文件夹,拜托了各位开发者,你真的认为我的手机上只安装你一个app吗?你认为你的app是世界上最重要的app吗?你应该将你的应用数据写到这个路径下!/Android/data/< package name >/files/… 作为一个开发者,我们的确不应该将我们应用的数…
转自:http://www.liaohuqiu.net/cn/posts/storage-in-android/ android系统自身自带有存储,另外也可以通过sd卡来扩充存储空间.前者好比pc中的硬盘,后者好移动硬盘. 前者空间较小,后者空间大,但后者不一定可用. 开发应用,处理本地数据存取时,可能会遇到这些问题: 需要判断sd卡是否可用: 占用过多机身内部存储,容易招致用户反感,优先将数据存放于sd卡; 应用数据存放路径,同其他应用应该保持一致,应用卸载时,清除数据: 标新立异在sd卡根目…
之前一直不知道 sdcard/Android目录什么作用,我做的项目里面缓存数据到本地一般都是在sdcard上面建一个文件,然后把数据放在这个文件夹下面的子文件夹下.下面介绍一种更好的解决方法. 应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的. 大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中.这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据.如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办…
可以查看Android开发文档中的:/docs/guide/topics/data/data-storage.html Android provides several options for you to save persistent application data. The solution you choose depends on your specific needs, such as whether the data should be private to your appli…
Android能用来存储的地方有两个,一个是手机内置的存储空间,一个是外置的SD卡,内置的存储空间一般比较小,所以应用的缓存建议存储在外置的SD卡中. 在Android系统中如何获得存储的路径呢? public static void getRootPath(Context context) { Log.d("ExternalDirectory->", Environment.getExternalStorageDirectory().getPath()); Log.d(&quo…
Android的存储 内部存储空间RAM内存:运行内存,相当于电脑的内存ROM内存:存储内存,相当于电脑的硬盘外部存储空间 SD卡:相当于电脑的移动硬盘    * 2.2之前,sd卡路径:sdcard    * 4.3之前,sd卡路径:mnt/sdcard    * 4.3开始,sd卡路径:storage/sdcard* 所有存储设备,都会被划分成若干个区块,每个区块有固定的大小* 存储设备的总大小 = 区块大小 * 区块数量文件访问权限* 指的是谁能访问这个文件* 在Android中,每一个应…
首先,我们得知道android中有内部存储(与内存要区分开来)和外部存储. 内部存储容量较小,尽量少使用,sqlite及SharePreference的数据均在内部存储当中. Log.i("com.loo","外部存储目录============"+Environment.getExternalStorageDirectory().getAbsolutePath()); Log.i("com.loo","外部存储公用目录========…
blog.csdn.net/hshm20517/article/details/6461890 assets:用于存放需要打包到应用程序的静态文件,以便部署到设备中.与res/raw不同点在于,ASSETS支持任意深度的子目录.这些文件不会生成任何资源ID,必须使用/assets开始(不包含它)的相对路径名. res:用于存放应用程序的资源(如图标.GUI布局等),将被打包到编译后的Java中.不支持深度子目录 res/menu:存放基于XML的菜单描述: res/raw:存放通用的文件, 该文…
 JNI的实现可涉及两个关键类:JNIEnv和JavaVM. JavaVM:这个代表java的虚拟机.所有的工作都是从获取虚拟机的接口开始的.             第一种方式,在加载动态链接库的时候,JVM会调用JNI_OnLoad(JavaVM* jvm, void* reserved)(如果定义了该函数).第一个参数会传入JavaVM指针.             第二种方式,在native code中调用JNI_CreateJavaVM(&jvm, (void**)&env, &…
android资源目录---assets与res/raw的不同 Android 2011-05-24 14:40:21 阅读20 评论0   字号:大中小 订阅 assets:用于存放需要打包到应用程序的静态文件,以便部署到设备中.与res/raw不同点在于,ASSETS支持任意深度的子目录.这些文件不会生成任何资源ID,必须使用/assets开始(不包含它)的相对路径名. res:用于存放应用程序的资源(如图标.GUI布局等),将被打包到编译后的Java中.不支持深度子目录 res/menu:…
关于存储路径问题,如果是想要存储在应用本身的路径下,如果该应用卸载的时候,对应文件随之卸载, 如果使用的是android level 8以上的版本,采用的是: getExternalFilesDir(): 该函数需要向其传递一个参数:Environment.DIRECTORY_MUSIC,或者诸如此类. 得到的路径为:/storage/sdcard0/Android/data/<packageName>/files/Music 如果使用的较低的版本: 采用getExternalStorageD…
在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口:Thread类是在java.lang包中定义的.一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限. 下面看例子: package org.thread.demo; class MyThread extends Thread{ private String name; public MyThread(String name)…
作为一个完整的应用程序,数据存储操作是必不可少的.因此,Android系统一共提供了四种数据存储方式.分别是:SharePreference.文件存储.SQLite. Content Provider.对这几种方式的不同和应用场景整理如下.第一种: 使用SharedPreferences存储数据 适用范围:保存少量的数据,且这些数据的格式非常简单:字符串型.基本类型的值.比如应用程序的各种配置信息(如是否打开音效.是否使用震动效果.小游戏的玩家积分等),解锁口 令密码等 核心原理:保存基于XML…
Android的四种数据存储方式: 1.SharedPrefrences 2.SQLite 3.Content Provider 4.File SharedPrefrences: 1.是一种轻型的数据存储形式 2.本质是基于xml文件存储key-value键值对数据 3.主要用来存储一些简单的配置信息 SharedPrefrences对象本身只能获取数据而不支持存储和修改,对数据的存储和修改通过Editor对象来实现. 实现SharedPrefrences存储步骤如下: 1.获得SharedPr…
android上的view的类叫View, 以下是它的class overview, This class represents the basic building block for user interface components. A View occupies a rectangular area on the screen and is responsible for drawing and event handling. View is the base class for wi…
1.首先是我们分析datetime长度是8个字节,INT的长度是4个字节,存储空间上比datatime少. 2.int存储索引的空间也比datetime少,排序效率高,查询速度比较快. 3.方便计算,unix时间戳有点就是方便计算. 总结了一下timestamp和datetime的区别: 1.timestamp有范围限制1970 ~ 2037 2.timestamp支持default current_timestamp 来设置默认自动当前时间 3.timestamp支持on update cur…
获得android手机的存储路径: public String getPrimaryStoragePath(){ try{ StorageManager sm = (StorageManager) context.getSystemService(context.STORAGE_SERVICE); Method m = StorageManager.class.getMethod("getVolumePaths", null); String[] paths = (String[])…
MyISAM 是非事务的存储引擎,innodb是支持事务的存储引擎. innodb的引擎比较适合于插入和更新操作比较多的应用,而MyISAM 则适合用于频繁查询的应用 . MyISAM --表锁,innodb--设计合理的话是行锁,MyISAM 不会出现死锁. 最大的区别就是MYISAM适合小数据,小并发:INNODB 适合大数据,大并发.最大的区别就是在锁的级别上. MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持. MyISAM类型的表强调的是性能,其执行数度比InnoDB类…
总共四种:SharedPreferences,文件存储,SQLite数据库,ContentProvider,网络存储 1.sharedPreferences:适合存储少量数据,而且存取的格式简单,采用Map数据结构来存储数据,以键值对的形式存储 存储文件到:/data/data/<package-name>/shared-prefs 注意:只能在同一个包内使用 2.文件存储:可以存储大量的数据,但是更新数据困难,存取类型复杂的数据时,需要让实体类实现Serializable接口(不能是Parc…