如何向sdcard中添加文件或文件夹?
在ddms视图的右上角有新建文件夹、导入导出文件的图标
如何知道媒体文件的位置
在phonegap中,插件是能够将网页前端操作与移动设备进行连接,利用设备资源
插件类继承cordova中的抽象类plugin,需要实现的抽象方法是
public abstract PluginResult execute(String action, JSONArray paramJSONArray, String paramString2);
action是前端调用时指定的方法,paramJSONArray是调用时的参数数组,利用paramJSONArray.getString(0);可以得到网页穿过来的数据
返回的对象由构造函数初始化。
前端调用函数
cordova.exec(successCallback, errCallback, "return_string",
"rtnstring", ["firstArgument", "secondArgument", 42,
false]);
函数需要返回一个PluginResult类型的对象,如果调用成功,就会将该对象返回给successCallback对象,失败则会将对象返给errCallback
函数,return_string为服务名,需要在res/xml/config.xml文件中配置,例如
<plugin name="return_string" value="com.android.plugin.PluginDemo"/>
name指定的是服务名,value指的是该服务对应的实体类,需要加包名,
在phonegap中如何对数据库操作,并且查看数据库内容
利用SQLite Database Browser工具可以查看从程序中导出来的 。db文件
也可以直接使用sql语句查询数据,方法是在命令行模式进入tools目录,adb shell ls -l cd sqlite3 database.db 等命令操作数据库
在phonegap中会为程序在/data/data/包名/app_database目录下自动生成一个名为Databases.db,大小为0kb的数据库文件,可以在程序中利用phonegap的相关api对其
操作,例如
var db = window.openDatabase("Databases","1.0","myDatabase",100000);
db.transaction(createTable,createTableErr,createTableSuccess);function createTable(trans){
trans.executeSql("create table myTab1(id unique, data)");
trans.executeSql('insert into myTab1 (id, data) VALUES (1, "one")');
trans.executeSql('insert into myTab1 (id, data) VALUES (2, "two")');
}
即可以对数据库操作,还可以在该目录下创建新的数据库,例如
var db = window.openDatabase("DataStorage","1.0","myDatabase",100000);
即会创建一个名为DataStorage的数据库