小编Bal*_*ddy的帖子

cordova 3.0 FileWriter THREAD WARNING:exec()调用File.write阻塞主线程...应该使用CordovaInterface.getThreadPool()

我正在使用FileWriter,当我编写各种大小大约3MB的大文件时,除了logcat中的这些消息之外它工作正常.

我查看了FileUtils.java源代码,而write函数没有使用getThreadPool()接口(读者可以).

作为一个测试,我认为我会调整文件编写器以使用runnable接口,并且能够获得编译和执行的代码 - 遗憾的是,logcat消息仍然显示出来......

到目前为止,我得到的阻塞时间在25ms到1200ms之间.我没有运行任何严肃的比较测试来确定这种变化是否有任何真正的区别 - 我只是在寻找没有logcat消息.

以下这些变化是否会产生任何真正的变化?

这些消息是我应该担心的吗?

我的java非常基础 - 但这是我所做的更改 - 遵循读者实现.

else if (action.equals("write")) {
    this.write(args.getString(0), args.getString(1), args.getInt(2), args.getBoolean(3), callbackContext);
}
/* this is the original code
else if (action.equals("write")) {
    long fileSize = this.write(args.getString(0), args.getString(1), args.getInt(2), args.getBoolean(3));
    callbackContext.sendPluginResult(new PluginResult(PluginResult.Status.OK, fileSize));
Run Code Online (Sandbox Code Playgroud)

}*/

并在写函数如下...

public void write(String filename, final String data, final int offset, final boolean isBinary, final CallbackContext callbackContext) throws FileNotFoundException, IOException, NoModificationAllowedException {
if (filename.startsWith("content://")) {
    throw new NoModificationAllowedException("Couldn't write to file given its content …
Run Code Online (Sandbox Code Playgroud)

android filewriter threadpool cordova

6
推荐指数
1
解决办法
3309
查看次数

PouchDB带有jquery mobile和phonegap

我试图在移动(Android)应用程序中一起使用上述三个.当我在firefox(20),Ubuntu(12.04)中运行它时,它的工作非常好,但当我将它加载到手机(或Android模拟器)时,它似乎无法存储数据.在firefox中运行时,数据存储在sqlite数据库中的用户配置文件目录中,但是有应用程序?如何告诉PouchDB在哪里存储数据库?我该怎么做?

- 附加信息

我一直在使用PouchDB适配器类型进行更多测试 - 在firefox和chrome中.firefox不支持WebSQL,因此使用chrome来测试它.这是我在index.html中加载的脚本.

<link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.3.1.min.css" />
<script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery-1.9.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery.mobile-1.3.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="cordova-2.6.0.js"></script>
<script type="text/javascript" charset="utf-8" src="jquery.mobile/pouch-20130419/pouchdb-nightly.js"></script>
<script type="text/javascript" charset="utf-8" src="testa.js"></script>
Run Code Online (Sandbox Code Playgroud)

以下是生成这些日志的一些相关代码

console.log("Creating the database" + JSON.stringify(userdata));
Pouch('idb://'+userdata.username, function(err, database){
    if (err) {
    console.log('Failed to create database:'+ JSON.stringify(err));
        return {'ok': false, 'reason':'Failed to create database:'+ userdata.username};
    } else {
        pdb = database;
        console.log('Created database:'+ JSON.stringify(userdata.username));
        Pouch('idb://cred', function(err, credb){
           if (err) {
               console.log('Failed to create database: cred'+ JSON.stringify(err));
               //
               return {'ok': false, …
Run Code Online (Sandbox Code Playgroud)

jquery-mobile cordova pouchdb

2
推荐指数
1
解决办法
2367
查看次数