android - 远程调试已终止,原因是:连接丢失
问题描述
尝试查看领域数据库时出现连接丢失错误。这就是我如何初始化 stetho 和领域。我仍然收到此错误。我什至放了 withDeleteIfMigrationNeeded(true)。仍然没有工作。
public class ApplicationClass extends Application {
// Database Name...
private static final String DB_NAME = "Cheruvu.realm";
@Override
public void onCreate() {
super.onCreate();
configureRealm();
}
private void configureRealm() {
Realm.init( this );
RealmInspectorModulesProvider realmInspectorModulesProvider = RealmInspectorModulesProvider.builder(this)
.withDeleteIfMigrationNeeded(true)
.build();
Stetho.initialize(
Stetho.newInitializerBuilder( this )
.enableDumpapp( Stetho.defaultDumperPluginsProvider( this ) )
.enableWebKitInspector( realmInspectorModulesProvider )
.build() );
RealmConfiguration config = new RealmConfiguration.Builder()
.name( DB_NAME )
.deleteRealmIfMigrationNeeded()
.encryptionKey( generateSecurityKey() )
.build();
Realm.deleteRealm( config );
Realm.setDefaultConfiguration( config );
}
private byte[] generateSecurityKey() {
ByteBuffer bb = ByteBuffer.wrap( new byte[64] );
bb.putInt( UUID.randomUUID().hashCode() );
return bb.array();
}
@Override
public void onTerminate() {
super.onTerminate();
Realm realm = Realm.getDefaultInstance();
if (!realm.isClosed()) {
Realm.getDefaultInstance().close();
}
}
}
这是我的依赖项:
// stetho for database lookup
implementation "com.uphyca:stetho_realm:2.3.0"
implementation "com.facebook.stetho:stetho:1.5.0"
解决方案
您缺少领域的加密密钥。
String securityKey = generateSecurityKey();
RealmInspectorModulesProvider realmInspectorModulesProvider = RealmInspectorModulesProvider.builder(this)
.withDeleteIfMigrationNeeded(true)
.withEncryptionKey(DB_NAME, securityKey)
.build();
Stetho.initialize(
Stetho.newInitializerBuilder( this )
.enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
.enableWebKitInspector( realmInspectorModulesProvider )
.build());
RealmConfiguration config = new RealmConfiguration.Builder()
.name( DB_NAME )
.deleteRealmIfMigrationNeeded()
.encryptionKey(securityKey)
.build();
推荐阅读
- google-sheets - 如何在不手动调整所有索引的情况下计算谷歌表格中几个增长组之一的总和?
- c++ - C++ 链接命令
- javascript - 如何订阅联合类型枚举属性
- mongodb - How can i apply join into array of object inside array in MongoDB?
- amazon-web-services - AWS MediaPackage 作为 CDN (CloudFront) 的来源
- python - 关于python中使用返回值的问题
- three.js - 将动画同步到时钟增量以进行录制
- sql - SQL如何从一个列表中连接相同的值然后求和
- unity3d - 如何在 Unity 中通过脚本更改文本
- android - 在小屏幕上看不到按钮之间的空间