unity 在安卓中使用SQLite

unity 在安卓中使用SQLite因注意以下几点:

1.在Player Setting里的 把API Compatbility Level 选择.NET 2.0。

2.把数据库放在StreamingAssets文件下

3.由于在安卓中StreamingAssets下的文件是只读属性,所以要把数据库拷贝到沙盘路径

关键代码如下:

#if UNITY_EDITOR
        path = Application.streamingAssetsPath + datebaseName;
#elif UNITY_ANDROID
        // 沙盘路径
        path = Application.persistentDataPath + datebaseName;

        if (File.Exists(path)) {
            // 如果沙盘路径中已经有数据库,应该先删除掉,以防是数据库有更新
            File.Delete(path);
        } 

        // jar:file:是安卓手机路径的意思  
        // Application.dataPath + "!/assets/"   即  Application.dataPath/StreamingAssets  
        WWW loadDB = new WWW("jar:file://" + Application.dataPath + "!/assets" + datebaseName);
        while (!loadDB.isDone) { }
        // 因为安卓中stream路径下的文件权限是只读,所以获取之后把他拷贝到沙盘路径中
        File.WriteAllBytes(path, loadDB.bytes);
#else
        path = Application.streamingAssetsPath + datebaseName;
#endif

        _Connection = new SqliteConnection("URI=file:" + path);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值