两个数据库应用程序,一个 HTML5 WebSql 和一个使用 ADT 构建的 Android。两者都使用完全相同的 Sqlite 数据库,因此具有相同的模式、表和索引。
SELECT
road.description,
xy.lat AS lat,
xy.lon AS lon,
road.id_road AS id_road
FROM xy
INNER JOIN road
ON xy.id_road = road.ID_ROAD
WHERE xy.lat BETWEEN -36.89804010977648
AND -36.878040110223516
AND xy.lon BETWEEN 174.78966425022352
AND 174.8096642497765
Web 应用程序使用 db.transaction。Android SQL 在一个类中运行,该类使用在异步进程中创建的数据库对象扩展 SQLiteOpenHelper。
SQLiteDatabase dbr = this.getReadableDatabase();
Cursor cursor = dbr.rawQuery(sql, null);
if( cursor.moveToFirst()){
// loop through and analyse approx 400 results
}
在 HTC-1V 硬件上测试 HTML5 在 250 毫秒内运行上述查询,在 Android 应用程序上仅需要 4000 毫秒才能打开光标。是否可以从 Android 应用程序获得 WebSql 性能?