Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:如何在第一次运行时将文件从资产加载到SD?_Android_File_Sd Card_Assets - Fatal编程技术网

Android:如何在第一次运行时将文件从资产加载到SD?

Android:如何在第一次运行时将文件从资产加载到SD?,android,file,sd-card,assets,Android,File,Sd Card,Assets,如何将文件(SQLlite、文本等)从Assets文件夹加载到SD卡上,并且仅在应用程序首次运行时加载?以下是我使用的方法。将此作为应用程序的主要活动,并使用它来启动真正的应用程序活动 公共类启动扩展活动{ /** *--首次创建活动时调用。 * ============================================================== **/ @凌驾 创建时的公共void(Bundle savedInstanceState){ super.onCreate(s

如何将文件(SQLlite、文本等)从Assets文件夹加载到SD卡上,并且仅在应用程序首次运行时加载?

以下是我使用的方法。将此作为应用程序的主要活动,并使用它来启动真正的应用程序活动

公共类启动扩展活动{
/**
*--首次创建活动时调用。
* ==============================================================
**/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
FirstRun();
}
私有void FirstRun(){
SharedReferences设置=this.getSharedReferences(“YourAppName”,0);
boolean firstrun=settings.getBoolean(“firstrun”,true);
if(firstrun){//检查是否运行了应用程序b4
SharedReferences.Editor e=settings.edit();
e、 putBoolean(“firstrun”,false);
e、 提交();
//如果没有,请运行以下方法:
SetDirectory();
Intent home=新Intent(StartUp.this、YourMainActivity.class);
星触觉(家);
}else{//否则在此处启动应用程序:
Intent home=新Intent(StartUp.this、YourMainActivity.class);
星触觉(家);
}
}
/**
*--检查SD卡是否已安装,并在其中创建一个目录
* ========================================================================
**/
私有void SetDirectory(){
if(android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_-MOUNTED)){
extStorageDirectory=Environment.getExternalStorageDirectory().toString();
File txtDirectory=新文件(extStorageDirectory+“/yourAppName/txtDirectory/”;//txt文件的示例名称
//创造
//a
//文件
//反对
//为了
//
//母公司
//目录
txtDirectory.mkdirs();//让对象生成目录
//结构,如果需要。
CopyAssets();//然后运行该方法复制文件。
}else if(android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED_READ_ONLY)){
AlertsAndDialogs.sdCardMissing(this);//或使用您自己的方法,例如:Toast
}
}
/**
*--将文件从资产文件夹复制到SD卡
* ===========================================================
**/
私人资产(){
AssetManager AssetManager=getAssets();
String[]files=null;
试一试{
files=assetManager.list(“”);
}捕获(IOE异常){
Log.e(“tag”,e.getMessage());
}
对于(int i=0;i