【问题标题】:Vuforia - Load DataSet from Internal StorageVuforia - 从内部存储加载数据集
【发布时间】:2014-05-12 06:21:46
【问题描述】:

我使用 Quallcomm 的 Vuforia for Android 进行图像识别。我确实将 .dat 和 .xml 文件从 JSON Web 服务下载到具有这样路径的内部存储;

 public void run() {
     File root = android.os.Environment.getExternalStorageDirectory();               
        File dir = new File (root.getAbsolutePath() + "/AveaEtiket/"); 
                     if(dir.exists()==false) {
                          dir.mkdirs();
                             }

我想从内部存储中加载这些文件,而不是 assets 文件夹 中存在的文件。有没有人熟悉这种情况?

谢谢。

【问题讨论】:

    标签: android load dataset metadata vuforia


    【解决方案1】:

    Vuforia 为您提供不同的常量来指定读取标记文件的来源:

    int markerDataFileStorageType;
    markerDataFileStorageType = DataSet.STORAGE_TYPE.STORAGE_APP;
    markerDataFileStorageType = DataSet.STORAGE_TYPE.STORAGE_APPRESOURCE;
    markerDataFileStorageType = DataSet.STORAGE_TYPE.STORAGE_ABSOLUTE;
    if (!dataSet.load(MARKER_FILE, markerDataFileStorageType)) {
    ...
    

    当然,对于绝对存储类型,需要提供完整的文件路径。

    每种存储类型代表如下:

    DataSet.STORAGE_TYPE.STORAGE_APP          -> INTERNAL or EXTERNAL storages
    DataSet.STORAGE_TYPE.STORAGE_APPRESOURCE  -> ASSETS
    DataSet.STORAGE_TYPE.STORAGE_ABSOLUTE     -> ABSOLUTE path
    

    【讨论】:

    • 嗨,谢谢你的信息(+1),如果 StorageType 是 STORAGE_APP,我能知道应该给出什么类型的字符串吗?
    • 不确定你的意思。该字符串应表示指定存储上标记文件的相对路径。如果您将标记存储在应用程序存储的根文件夹(例如 Android 上的 assets 文件夹),则只需文件名即可。如果您在该存储类型中创建一个文件夹,则在文件名/字符串中也使用它。
    猜你喜欢
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 2015-06-28
    • 2018-03-14
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多