0

我正在尝试在 BlackBerry 10 模拟器提供的文件系统的数据文件夹中添加一些可写文件。提供的链接中的 PFB 文件系统层次结构:https ://developer.blackberry.com/cascades/documentation/device_platform/filesystem/index.html

在 bar-descriptor.xml 文件中尝试了以下选项,但其中任何一个都没有成功。1. $HOME/jsapp.html 2. ${HOME}/jsapp.html

任何帮助,将不胜感激。

4

2 回答 2

0

正如理查德所说,这直接来自 Quotes 示例应用程序

    void CustomSqlDataSource::copyFileToDataFolder(const QString fileName)
{
    // Since we need read and write access to the file, it has
    // to be moved to a folder where we have access to it. First,
    // we check if the file already exists (previously copied).
    QString dataFolder = QDir::homePath();
    QString newFileName = dataFolder + "/" + fileName;
    QFile newFile(newFileName);


    if (!newFile.exists()) {
        // If the file is not already in the data folder, we copy it from the
        // assets folder (read only) to the data folder (read and write).
        QString appFolder(QDir::homePath());
        appFolder.chop(4);
        QString originalFileName = appFolder + "app/native/assets/" + fileName;
        QFile originalFile(originalFileName);

        if (originalFile.exists()) {
            // Create sub folders if any creates the SQL folder for a file path like e.g. sql/quotesdb
            QFileInfo fileInfo(newFileName);
            QDir().mkpath (fileInfo.dir().path());

            if(!originalFile.copy(newFileName)) {
                qDebug() << "Failed to copy file to path: " << newFileName;
            }
        } else {
            qDebug() << "Failed to copy file data base file does not exists.";
        }
    }

    mSourceInDataFolder = newFileName;
}
于 2013-01-22T13:58:48.517 回答
0

您的问题尚不清楚,但听起来您正试图在 BAR 文件中包含这些文件。你不能这样做。使用 BAR 文件部署的所有资产都包含在应用程序签名中,并且无法更改(除了在模拟器或具有未签名 BAR 的开发人员令牌的设备上)。如果您需要在安装后修改资产,请使用 BAR 文件部署初始版本并将其复制到数据目录。其中一个示例程序(如果我没记错的话是报价数据库示例)执行此操作。

于 2012-12-27T23:59:14.677 回答