asata / react-native-daummap

react-native용 Daum 지도
MIT License
26 stars 22 forks source link

안드로이드 앱 실행 시 강제종료 및 링크 관련 이슈 #20

Open redvelvet-fan opened 3 years ago

redvelvet-fan commented 3 years ago
2021-01-05 03:41:52.625 1011-1011/? E/SDAgentPackageStateReceiver: Not going to handle 'com.gmap_test'!
2021-01-05 03:41:52.636 5788-5788/? E/Friday_PackageManagerReceiver: This package will be replaced = com.gmap_test
2021-01-05 03:41:52.792 1011-1011/? E/SDAgentPackageStateReceiver: Not going to handle 'com.gmap_test'!
2021-01-05 03:41:53.859 8904-8904/? E/com.gmap_test: Unknown bits set in runtime_flags: 0x8000
2021-01-05 03:41:54.642 1011-1098/? E/WindowManager: win=Window{c513784 u0 Splash Screen com.gmap_test EXITING} destroySurfaces: appStopped=false win.mWindowRemovalAllowed=true win.mRemoveOnExit=true win.mViewVisibility=0 caller=com.android.server.wm.AppWindowToken.destroySurfaces:1248 com.android.server.wm.AppWindowToken.destroySurfaces:1229 com.android.server.wm.WindowState.onExitAnimationDone:5189 com.android.server.wm.WindowStateAnimator.onAnimationFinished:320 com.android.server.wm.WindowState.onAnimationFinished:5630 com.android.server.wm.-$$Lambda$yVRF8YoeNdTa8GR1wDStVsHu8xM.run:2 com.android.server.wm.SurfaceAnimator.lambda$getFinishedCallback$0$SurfaceAnimator:100 
2021-01-05 03:41:55.308 8904-8904/? E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.gmap_test, PID: 8904
    java.lang.UnsatisfiedLinkError
        at net.daum.mf.map.n.api.NativeMapLibraryLoader.loadLibrary(NativeMapLibraryLoader.java:39)
        at net.daum.mf.map.n.api.NativeThread.<clinit>(NativeThread.java:6)
        at android.opengl.alt.GLSurfaceView.setRenderer(GLSurfaceView.java:302)
        at net.daum.android.map.MapView.init(MapView.java:43)
        at net.daum.android.map.MapView.<init>(MapView.java:55)
        at net.daum.mf.map.api.MapView.<init>(MapView.java:460)
        at com.teamsf.daummap.RNMapView.<init>(RNMapView.java:20)
        at com.teamsf.daummap.DaumMapManager.createViewInstance(DaumMapManager.java:52)
        at com.teamsf.daummap.DaumMapManager.createViewInstance(DaumMapManager.java:30)
        at com.facebook.react.uimanager.ViewManager.createViewInstance(ViewManager.java:139)
        at com.facebook.react.uimanager.ViewManager.createView(ViewManager.java:83)
        at com.facebook.react.uimanager.NativeViewHierarchyManager.createView(NativeViewHierarchyManager.java:261)
        at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute(UIViewOperationQueue.java:186)
        at com.facebook.react.uimanager.UIViewOperationQueue$1.run(UIViewOperationQueue.java:911)
        at com.facebook.react.uimanager.UIViewOperationQueue.flushPendingBatches(UIViewOperationQueue.java:1028)
        at com.facebook.react.uimanager.UIViewOperationQueue.access$2600(UIViewOperationQueue.java:48)
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:1088)
        at com.facebook.react.uimanager.GuardedFrameCallback.doFrame(GuardedFrameCallback.java:29)
        at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:175)
        at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:85)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:997)
        at android.view.Choreographer.doCallbacks(Choreographer.java:797)
        at android.view.Choreographer.doFrame(Choreographer.java:728)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:984)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:8167)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
2021-01-05 03:41:55.423 1011-1297/? E/InputDispatcher: channel '68fb4ea com.gmap_test/com.gmap_test.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
2021-01-05 03:41:55.441 1011-1763/? E/WindowManager: win=Window{68fb4ea u0 com.gmap_test/com.gmap_test.MainActivity EXITING} destroySurfaces: appStopped=false win.mWindowRemovalAllowed=true win.mRemoveOnExit=true win.mViewVisibility=0 caller=com.android.server.wm.AppWindowToken.destroySurfaces:1248 com.android.server.wm.AppWindowToken.destroySurfaces:1229 com.android.server.wm.WindowState.onExitAnimationDone:5189 com.android.server.wm.-$$Lambda$01bPtngJg5AqEoOWfW3rWfV7MH4.accept:2 java.util.ArrayList.forEach:1262 com.android.server.wm.AppWindowToken.onAnimationFinished:3931 com.android.server.wm.AppWindowToken.commitVisibility:913 
  1. React Native 0.60 이상을 사용하고 있어서 오토 링크가 되리라 생각하고 따로 안하였는데 오류 발생

  2. 그래서 [project_name] % react-native link react-native-daummap 실행

  3. 2.를 수행했음에도 오류 발생. manual link를 시도하기 위해 react-native unlink react-native-daummap 실행

  4. error Something went wrong while unlinking. Reason Cannot read property 'find' of undefined. Run CLI with --verbose flag for more details. TypeError: Cannot read property 'find' of undefined at removeFromProjectReferences (/Users/sanghyun/Documents/GitHub/gmap_test/node_modules/@react-native-community/cli-platform-ios/build/link/removeFromProjectReferences.js:30:53) 와 같은 오류가 발생되어 무시한 채 manual link 시도

  5. MainApplication.java 부분에서

    @Override
        protected List<ReactPackage> getPackages() {
          @SuppressWarnings("UnnecessaryLocalVariable")
          List<ReactPackage> packages = new PackageList(this).getPackages();
          // Packages that cannot be autolinked yet can be added manually here, for example:
          // packages.add(new MyReactNativePackage());
          packages.add(new DaumMapPackage()); //I add this Line
          return packages;
        }

    이 예시와 달라 위 주석과 같이 수정

  6. 아래와 같은 Error 발생 (감히 예상해본건데 link 부분에서 문제가 생겨서 2. 에서 오류가 나고 여기서도 오류가 나는 걸로 예상(충돌로 의한))

    2021-01-05 04:07:10.028 18263-18263/? E/com.gmap_test: Unknown bits set in runtime_flags: 0x8000
    2021-01-05 04:07:10.681 18263-20222/com.gmap_test E/unknown:ReactNative: Exception in native call
    java.lang.IllegalStateException: Native module DaumMap tried to override DaumMapModule. Check the getPackages() method in MainApplication.java, it might be that module is being created twice. If this was your intention, set canOverrideExistingModule=true. This error may also be present if the package is present only once in getPackages() but is also automatically added later during build time by autolinking. Try removing the existing entry and rebuild.
        at com.facebook.react.NativeModuleRegistryBuilder.processPackage(NativeModuleRegistryBuilder.java:55)
        at com.facebook.react.ReactInstanceManager.processPackage(ReactInstanceManager.java:1347)
        at com.facebook.react.ReactInstanceManager.processPackages(ReactInstanceManager.java:1318)
        at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:1225)
        at com.facebook.react.ReactInstanceManager.access$1100(ReactInstanceManager.java:131)
        at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:1016)
        at java.lang.Thread.run(Thread.java:919)
    2021-01-05 04:07:10.858 18263-18263/com.gmap_test E/DecorView: mWindow.mActivityCurrentConfig is null
  7. MainApplication.java 은 수정하지 않기로 하고 빌드진행함

  8. 빌드 됨과 동시에 에러 발생하여 강제종료

  9. 내용은 최상단 내용과 같음.

추가 에러

2021-01-05 04:12:56.910 20503-20503/com.gmap_test E/com.gmap_test: Unknown bits set in runtime_flags: 0x8000
2021-01-05 04:12:59.204 20503-24097/com.gmap_test E/OpenGLRenderer: ReliableSurface: perform returned an error
2021-01-05 04:12:59.249 20503-24138/com.gmap_test E/ReactNativeJNI: logMarker CREATE_REACT_CONTEXT_END
2021-01-05 04:12:59.249 20503-24137/com.gmap_test E/unknown:ReactNative: ReactInstanceManager.createReactContext: mJSIModulePackage null
2021-01-05 04:12:59.250 20503-24138/com.gmap_test E/ReactNativeJNI: logMarker RUN_JS_BUNDLE_START
2021-01-05 04:12:59.257 20503-24139/com.gmap_test E/unknown:ReactNative: ReactInstanceManager.attachRootViewToInstance()
2021-01-05 04:12:59.338 20503-24139/com.gmap_test E/unknown:ReactRootView: runApplication: call AppRegistry.runApplication
2021-01-05 04:12:59.397 20503-20503/com.gmap_test E/unknown:ReactNative: ReactInstanceManager.attachRootViewToInstance()
2021-01-05 04:12:59.399 20503-20503/com.gmap_test E/unknown:ReactRootView: runApplication: call AppRegistry.runApplication
2021-01-05 04:12:59.614 20503-24138/com.gmap_test E/ReactNativeJNI: logMarker RUN_JS_BUNDLE_END
2021-01-05 04:12:59.738 20503-20503/com.gmap_test E/net.daum.mf.map.n.api.NativeMapLibraryLoader: Can`t load DaumMapEngineApi.so file
2021-01-05 04:12:59.740 20503-20503/com.gmap_test E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.gmap_test, PID: 20503
    java.lang.UnsatisfiedLinkError
        at net.daum.mf.map.n.api.NativeMapLibraryLoader.loadLibrary(NativeMapLibraryLoader.java:39)
        at net.daum.mf.map.n.api.NativeThread.<clinit>(NativeThread.java:6)
        at android.opengl.alt.GLSurfaceView.setRenderer(GLSurfaceView.java:302)
        at net.daum.android.map.MapView.init(MapView.java:43)
        at net.daum.android.map.MapView.<init>(MapView.java:55)
        at net.daum.mf.map.api.MapView.<init>(MapView.java:460)
        at com.teamsf.daummap.RNMapView.<init>(RNMapView.java:20)
        at com.teamsf.daummap.DaumMapManager.createViewInstance(DaumMapManager.java:52)
        at com.teamsf.daummap.DaumMapManager.createViewInstance(DaumMapManager.java:30)
        at com.facebook.react.uimanager.ViewManager.createViewInstance(ViewManager.java:139)
        at com.facebook.react.uimanager.ViewManager.createView(ViewManager.java:83)
        at com.facebook.react.uimanager.NativeViewHierarchyManager.createView(NativeViewHierarchyManager.java:261)
        at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute(UIViewOperationQueue.java:186)
        at com.facebook.react.uimanager.UIViewOperationQueue$1.run(UIViewOperationQueue.java:911)
        at com.facebook.react.uimanager.UIViewOperationQueue.flushPendingBatches(UIViewOperationQueue.java:1028)
        at com.facebook.react.uimanager.UIViewOperationQueue.access$2600(UIViewOperationQueue.java:48)
        at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded(UIViewOperationQueue.java:1088)
        at com.facebook.react.uimanager.GuardedFrameCallback.doFrame(GuardedFrameCallback.java:29)
        at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame(ReactChoreographer.java:175)
        at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame(ChoreographerCompat.java:85)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:997)
        at android.view.Choreographer.doCallbacks(Choreographer.java:797)
        at android.view.Choreographer.doFrame(Choreographer.java:728)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:984)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:8167)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
ZeroCho commented 3 years ago

안드로이드 에뮬레이터에서 실행한 경우 이 에러가 납니다. 실기기에서만 동작합니다.