我使用Realm作为我的Android应用程序,我想使用Realm浏览器查看我的mac上的default.realm文件,但它要求加密密钥.
我没有通过提供“.encryptionKey(key)”明确地在Realm Configuration中进行加密.那么我必须提供什么加密密钥?默认情况下是否有加密?我在AndroID Studio上使用Realm插件2.0.2,我的Realm browser在Mac上使用2.0.1.
我也尝试在我的代码中提供这样的encryptionKey(key):
byte[] key = new byte[64];new SecureRandom().nextBytes(key);RealmConfiguration config = new RealmConfiguration.Builder().encryptionKey(key).build();
并尝试向浏览器提供相同的哈希值(128长度)以打开文件,但没有运气.我在SO中找到了与如何使用adb pull检索文件相关的答案,但我对这个加密部分一无所知.在这方面的任何帮助都会很棒.
解决方法:
那么问题就是文件已损坏.来自Realm浏览器的错误消息相当误导,要求加密密钥.
由于我的手机没有root,我无法使用adb pull直接检索文件.
adb pull /data/data/<packagename>/files/ .
我通过将内容复制到系统上的文件来使用另一个命令,这会导致损坏.
这是最终为我工作的命令.
./adb exec-out run-as <packagename> cat /data/data/<packagename>/files/default.realm > ~/documents/foo/foo.realm
我以前没有把exec-out放在命令中,这就是腐败的原因.
总结以上是内存溢出为你收集整理的java – 使用Realm浏览器在Mac上查看realm文件的加密密钥全部内容,希望文章能够帮你解决java – 使用Realm浏览器在Mac上查看realm文件的加密密钥所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)