2017-01-15 6 views
3

Genymotion에서 Android를 실행하는 반응이있는 프로젝트에서 나는 앱을 실행하고있었습니다. 한순간에 문제가 발생하여 VM에서 응용 프로그램이 제거되었습니다. ADB 쉘을 통해 수동으로 권한을 설정, 내가 ADB 쉘을 통해 제거, Genymotion을 차단하려고했습니다RealmDB - React Native - '.management'경로에서 영역을 열 수 없습니다.

Unable to open a realm at path '.management'. 
Please use a path where your app has read-write permissions. <unknown> 
    index.js:100 loadModuleImplementation 
    require.js:171 guardedLoadModule 
    require.js:123 
_require 
    require.js:107 <unknown> 
    Repeaters.js:6 loadModuleImplementation 
    require.js:171 guardedLoadModule 
    require.js:123 
_require 
    require.js:107 <unknown> 
    NavigationRouter.js:12 loadModuleImplementation 
    require.js:171 guardedLoadModule 
    require.js:123 
_require 
    require.js:107 <unknown> 
    RootContainer.js:5 loadModuleImplementation 
    require.js:171 guardedLoadModule 
    require.js:123 
_require 
    require.js:107 <unknown> 
    index.android.js:8 loadModuleImplementation 
    require.js:171 guardedLoadModule 
    require.js:116 
_require 
    require.js:107 global code 
    require-0.js:1 

: 응용 프로그램을 다시 실행하면 내가 경고를 받았다. 문제를 해결할 수없는 것 같습니다.

제안 사항?

감사합니다.

+0

'Realm' 생성자에 제공하는 경로는 무엇입니까? –

답변

3

migrations 때문에 같은 문제가 발생했습니다. ios에서는 잘 작동했지만 안드로이드에서는 그렇지 않았습니다.

코드

let nextSchemaIndex = Realm.schemaVersion(Realm.defaultPath); 
while (nextSchemaIndex < schemas.length) { 
    const migratedRealm = new Realm(schemas[nextSchemaIndex]); 
    nextSchemaIndex += 1; 
    migratedRealm.close(); 
} 

코드 전에 지금

let nextSchemaIndex = Realm.schemaVersion(Realm.defaultPath); 
while (nextSchemaIndex < schemas.length) { 
    const migratedRealm = new Realm({ ...schemas[nextSchemaIndex] }); 
    nextSchemaIndex += 1; 
    migratedRealm.close(); 
} 

문제를 해결할 영역 생성자에 대한 새로운 객체를 생성.

희망이 있습니다.

스키마 경로를 설정하지 않았지만 this도 도움이됩니다.

+0

이 답변은 Android에서도 효과가있었습니다. –