建议下载 包名为com.speedsoftware.sqleditor的软件,使用有root权限的手机查看数据库文件加深学习印象。
本demo代码存在问题
1,点击不能播放视频,只有Toast
2,视频排列的顺序不确定是不是1,2,3这样按照大小排序
3,每次都是删除数据库,重建,没有优化速度
import java.util.ArrayList;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import static android.content.ContentValues.TAG;
import static nativesample.videolan.org.myapplication.FindVideo.getFileDir;
import static nativesample.videolan.org.myapplication.FindVideo.getStoragePath;
public class MainActivity extends AppCompatActivity {
private ListView lv_Dir;
private FileBrowserAdaper1 adapter;
//文件名,路径
private String rempath;//外置存储
private String norempath;//内置存储
private MyDatabaseHelper dbHelp;
private SQLiteDatabase db;
private ArrayList<String> parentdir,// /storage/sdcard1/Download
currentdir, // Download
filepathArr, // /storage/sdcard1/Download/中国山寨机无可超越的史诗传说!无法匹敌的国产神话!.flv
filenameArr; //中国山寨机无可超越的史诗传说!无法匹敌的国产神话!.flv
Cursor cursor;//用于遍历数据库
@Override
protected void onDestroy() {
super.onDestroy();
db.close();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
currentdir = new ArrayList<>();
parentdir = new ArrayList<>();
filepathArr = new ArrayList<>();
filenameArr = new ArrayList<>();
deleteDatabase("test.db");
dbHelp = new MyDatabaseHelper(this, "test.db", null, 1);
db = dbHelp.getWritableDatabase();
setContentView(R.layout.activity_main);
rempath = getStoragePath(MainActivity.this, true);
norempath = getStoragePath(MainActivity.this, false);
lv_Dir = (ListView) findViewById(R.id.lv_localvideo);
//可以遍历内置存储下的external_sd
if (rempath != null) getFileDir(rempath, db);
if (norempath != null) getFileDir(norempath, db);
//遍历数据库 dir部分
cursor = db.rawQuery("select * from dir