當前位置: 首頁>>代碼示例>>Java>>正文


Java CordovaResourceApi.OpenForReadResult方法代碼示例

本文整理匯總了Java中org.apache.cordova.CordovaResourceApi.OpenForReadResult方法的典型用法代碼示例。如果您正苦於以下問題:Java CordovaResourceApi.OpenForReadResult方法的具體用法?Java CordovaResourceApi.OpenForReadResult怎麽用?Java CordovaResourceApi.OpenForReadResult使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.cordova.CordovaResourceApi的用法示例。


在下文中一共展示了CordovaResourceApi.OpenForReadResult方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: copyFileToURL

import org.apache.cordova.CordovaResourceApi; //導入方法依賴的package包/類
public JSONObject copyFileToURL(LocalFilesystemURL destURL, String newName,
        Filesystem srcFs, LocalFilesystemURL srcURL, boolean move) throws IOException, InvalidModificationException, JSONException, NoModificationAllowedException, FileExistsException {
    // First, check to see that we can do it
    if (move && !srcFs.canRemoveFileAtLocalURL(srcURL)) {
        throw new NoModificationAllowedException("Cannot move file at source URL");
    }
    final LocalFilesystemURL destination = makeDestinationURL(newName, srcURL, destURL, srcURL.isDirectory);

    Uri srcNativeUri = srcFs.toNativeUri(srcURL);

    CordovaResourceApi.OpenForReadResult ofrr = resourceApi.openForRead(srcNativeUri);
    OutputStream os = null;
    try {
        os = getOutputStreamForURL(destination);
    } catch (IOException e) {
        ofrr.inputStream.close();
        throw e;
    }
    // Closes streams.
    resourceApi.copyResource(ofrr, os);

    if (move) {
        srcFs.removeFileAtLocalURL(srcURL);
    }
    return getEntryForLocalURL(destination);
}
 
開發者ID:SUTFutureCoder,項目名稱:localcloud_fe,代碼行數:27,代碼來源:Filesystem.java

示例2: copyFile

import org.apache.cordova.CordovaResourceApi; //導入方法依賴的package包/類
private void copyFile(Filesystem srcFs, LocalFilesystemURL srcURL, File destFile, boolean move) throws IOException, InvalidModificationException, NoModificationAllowedException {
    if (move) {
        String realSrcPath = srcFs.filesystemPathForURL(srcURL);
        if (realSrcPath != null) {
            File srcFile = new File(realSrcPath);
            if (srcFile.renameTo(destFile)) {
                return;
            }
            // Trying to rename the file failed.  Possibly because we moved across file system on the device.
        }
    }

    CordovaResourceApi.OpenForReadResult offr = resourceApi.openForRead(srcFs.toNativeUri(srcURL));
    copyResource(offr, new FileOutputStream(destFile));

    if (move) {
        srcFs.removeFileAtLocalURL(srcURL);
    }
}
 
開發者ID:alex-shpak,項目名稱:keemob,代碼行數:20,代碼來源:LocalFilesystem.java

示例3: shouldInterceptRequest

import org.apache.cordova.CordovaResourceApi; //導入方法依賴的package包/類
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
    try {
        // Check the against the whitelist and lock out access to the WebView directory
        // Changing this will cause problems for your application
        if (!parentEngine.pluginManager.shouldAllowRequest(url)) {
            LOG.w(TAG, "URL blocked by whitelist: " + url);
            // Results in a 404.
            return new WebResourceResponse("text/plain", "UTF-8", null);
        }

        CordovaResourceApi resourceApi = parentEngine.resourceApi;
        Uri origUri = Uri.parse(url);
        // Allow plugins to intercept WebView requests.
        Uri remappedUri = resourceApi.remapUri(origUri);

        if (!origUri.equals(remappedUri) || needsSpecialsInAssetUrlFix(origUri) || needsKitKatContentUrlFix(origUri)) {
            CordovaResourceApi.OpenForReadResult result = resourceApi.openForRead(remappedUri, true);
            return new WebResourceResponse(result.mimeType, "UTF-8", result.inputStream);
        }
        // If we don't need to special-case the request, let the browser load it.
        return null;
    } catch (IOException e) {
        if (!(e instanceof FileNotFoundException)) {
            LOG.e(TAG, "Error occurred while loading a file (returning a 404).", e);
        }
        // Results in a 404.
        return new WebResourceResponse("text/plain", "UTF-8", null);
    }
}
 
開發者ID:fachrihawari,項目名稱:cordova-vuetify,代碼行數:32,代碼來源:SystemWebViewClient.java

示例4: copyResource

import org.apache.cordova.CordovaResourceApi; //導入方法依賴的package包/類
private static void copyResource(CordovaResourceApi.OpenForReadResult input, OutputStream outputStream) throws IOException {
    try {
        InputStream inputStream = input.inputStream;
        if (inputStream instanceof FileInputStream && outputStream instanceof FileOutputStream) {
            FileChannel inChannel = ((FileInputStream)input.inputStream).getChannel();
            FileChannel outChannel = ((FileOutputStream)outputStream).getChannel();
            long offset = 0;
            long length = input.length;
            if (input.assetFd != null) {
                offset = input.assetFd.getStartOffset();
            }
            // transferFrom()'s 2nd arg is a relative position. Need to set the absolute
            // position first.
            inChannel.position(offset);
            outChannel.transferFrom(inChannel, 0, length);
        } else {
            final int BUFFER_SIZE = 8192;
            byte[] buffer = new byte[BUFFER_SIZE];

            for (;;) {
                int bytesRead = inputStream.read(buffer, 0, BUFFER_SIZE);

                if (bytesRead <= 0) {
                    break;
                }
                outputStream.write(buffer, 0, bytesRead);
            }
        }
    } finally {
        input.inputStream.close();
        if (outputStream != null) {
            outputStream.close();
        }
    }
}
 
開發者ID:SUTFutureCoder,項目名稱:localcloud_fe,代碼行數:36,代碼來源:LocalFilesystem.java


注:本文中的org.apache.cordova.CordovaResourceApi.OpenForReadResult方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。