android 4

SharedPreferences-存储数据
一.SharedPreferences是数据持久化,数据能够被存储起来,不会被改变,程序退出后,我们再次运行的话,数据还在,就是数据持久化。
2.用途:比如做引导界面;手机qq登陆,等
我们来看看代码吧:

//系统会自动创建一个名字叫Share
SharedPreferences    sharedPreferences=getSharedPreferences("SharedPreference_name", Context.MODE_PRIVATE);
SharedPreferences.Editor editor=sharedPreferences.edit();
editor.putBoolean("first_into",false);    //这里你可以putInt等
editor.commit();

这里是保存的数据,那么我们在开始的时候应该setdata创建数据,我们以一个例子看下

private void setdata(){   
 SharedPreferences sharedPreferences=getSharedPreferences("SharedPreference_name", Context.MODE_PRIVATE);  

first_into=sharedPreferences .getBoolean("first_into",true);     //读取数据
      if(first_into==false){    
    startActivity(new Intent(First_page_activity.this,MainActivity.class));  
         finish();  
  }   else { 
 button=(Button)findViewById(R.id.button_one);  
 
        button.setOnClickListener(new View.OnClickListener() {    
           @Override            
   public void onClick(View view) {            
     startActivity(new Intent(First_page_activity.this,Second_page_activity.class));                   

    finish();      
         }     
      });   
 }}

代码有些乱啊,第一次使用代码框。
当然,我们还可以修改(就是在写一次editor.putInt(),删除editor.remove("key")
另外editor.applys()是和网络相关的,后台写数据,另开线程的
二.管理文件
1.存储:分为内部存储和外部存储
获取读取外部存储的权限—manifest:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">
Internal storage->
getFilesDir()是返回一个File,代表我们app的internal目录
getCachDir()也是返回一个File,代表app的internal缓存的目录
创造文件:File file=new File(getFilesDir(),"text.tex");
file.craeatNewFile() ->这里会出现异常,alt+enter选择捕捉异常就好啦
2.读取各个目录的文件

直接读取: 
   //打开文件
WebView webview=new WebView(this);
                   webview.loadUrl("file:///android_asset/test.html")
     InputStream inputstream=getResource().getAssets().open("test.html")
//读列表
String[] filenames = getAssets().list("images");
// 读图片
InputStream inputStream = getAssets().open("images/dog.jpg");
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
ImageView imageView = new ImageView(this);
imageView.setImageBitmap(bitmap);

读音乐

    AssetFileDescriptor assetFileDescriptor = getAssets().openFd("libai.mp3");    MediaPlayer player = new MediaPlayer();  
  player.reset(); 
   player.setDataSource(       
           assetFileDescriptor.getFileDescriptor(),    
           assetFileDescriptor.getStartOffset(), 
           assetFileDescriptor.getLength());  
  player.prepare(); 
   player.start();
}

读sd卡

void testSDCard(){    
 File file = new File("/sdcard/test/a.txt");  
 String filePath = Environment.getExternalStorageDirectory().getAbsolutePath();    
Environment.getDataDirectory(); // 获取Android中的data数据目录   
 Environment.getDownloadCacheDirectory();    
Environment.getExternalStorageDirectory();
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • permissionn.允许;批准,正式认可,认可user permission 使用权限permission D...
    lengol阅读 1,052评论 0 51
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,663评论 0 17
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,964评论 25 709
  • 孤雁朝天去,可破云霄; 只影秉烛游,志比天高!
    gsjxuer阅读 127评论 0 0
  • 当我第1001次夜晚感到困倦,想要睡觉的时候。回顾一下,今天确实没有复习什么。随着日子的累积,竟然连负罪感也不复存...
    小Mizanin阅读 272评论 0 0