"External"文件的 Android Studio 部署

标签 android android-studio deployment

我想将存在于开发机器中的文件(无论是什么类型:.jpg、.db、.txt 等)部署到目标机器中。

例如,Embarcadero RadStudio 具有不需要任何编码的部署机制(项目 -> 部署)。您只需定义本地路径(例如:c:\myprogram\something.txt)和目的地(例如:.\assets\internal)。

我如何使用 Android Studio 做同样的事情?

最佳答案

不确定它是否真的是同一件事或解决方法,但对我有用:

1)创建assets文件夹:app\src\main\assets

2) 将您需要的文件复制到文件夹中(此文件会自动复制到设备中)

3) 使用相对路径访问文件...

3-b) 将文件复制到所需位置,作为数据库的其他示例:

    //Open a stream for reading, located in the assets
    InputStream externalDbStream = context.getAssets().open(DB_NAME);

    //Create a stream for writing the database byte by byte
    OutputStream localDbStream = new FileOutputStream(DB_PATH);

    //Copy the database
    byte[] buffer = new byte[1024];
    int bytesRead;
    while((bytesRead = externalDbStream.read(buffer)) > 0){
        localDbStream.write(buffer, 0, bytesRead);
    }

    //FLUSH THE OUT STREAM
    localDbStream.flush();

    //Close the streams
    localDbStream.close();
    externalDbStream.close();

关于 "External"文件的 Android Studio 部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43736430/

相关文章:

android - 更改 fragment 中选项菜单的位置

android - 如何在 Android Studio 中使用不同的 key 生成 2 个不同的签名风格构建?

Android gradle 构建错误 "finished with non-zero exit value 42",这是什么意思,我该如何解决?

android - 在另一个类的 ProgressBar 上设置进度

android - Android 7.1.1 下缺少对话框按钮

android - 以编程方式更改在android设备中从未知来源安装apk的权限

Android Studio 3.5.2 找不到 USB 连接设备(但通过 adb 终端找到)

C++ linux 在部署环境中安装可执行文件

deployment - 如何在 Cloud Foundry 中访问用户提供的环境变量?

java - 将另一个 servlet 部署到 wildfly 实例