How to get more bug info on 'Unknown C++ exception in 'NativeModules'

I upgradded my SDK from 28 to 32 in my production app both android and iOS. A few out of thousand paid user reported they only can see the message: “Unhandled JS Exception: Module AppRegistry is not a registered callable module (calling runApplication)” by searching it from the web, it is not debuggable and need more information, as it only happen to a few user, none of my test devices have such problem even having the same phone model same iOS 12.2 version, so I have no choice but travelled hours to meet up with one of the actual customer, plug her phone to my macbook to see the console. However, it is kind of frustrated that I only got the message there is an C++ error in the native module and I cannot go deeper.

I know this error message meaningless, the answer of this kind of question is normally ‘pls get more info’. The question is how to get deeper ? I am using expo sdk, complied by expo, so I can’t test by removing some module and the app does not crash, the exception handler is captured inside expo app, it just show the message, it means we wont have crash report from app store connect console. Most importantly I cant keep meeting up will my customer for debugging. Is there anyway to debug it like expo build:ios --more-clue-version? I want to locate the modules name and trace log for the 'unknown C++ exception ’ so that I can report to expo.

default 12:11:12.667081 +0800 ExpoKitApp dynamic_cast error 2: One or more of the following type_info’s has hidden visibility. They should all have public visibility. N10__cxxabiv116__shim_type_infoE, id, N10__cxxabiv117__pbase_type_infoE.

error 12:11:12.667151 +0800 ExpoKitApp Unknown C++ exception in ‘NativeModules’

error 12:11:12.722856 +0800 ExpoKitApp Unhandled JS Exception: Unknown C++ exception in ‘NativeModules’

error 12:11:12.736544 +0800 ExpoKitApp Module AppRegistry is not a registered callable module (calling runApplication)

error 12:11:12.740177 +0800 ExpoKitApp Unhandled JS Exception: Module AppRegistry is not a registered callable module (calling runApplication)

default 12:11:12.769314 +0800 ExpoKitApp _MobileAssetSendCopyMatchingAssetsCommand: [MobileAssetError:29] Unable to copy asset information from https://mesu.apple.com/assets/ for asset type com.apple.MobileAsset.TextInput.SpellChecker



Expo CLI 2.15.4 environment info:
System:
OS: macOS 10.14.4
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 11.9.0 - /usr/local/bin/node
Yarn: 1.13.0 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
IDEs:
Android Studio: 3.1 AI-173.4720617
Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
npmPackages:
expo: ^32.0.0 => 32.0.6
react: 16.5.0 => 16.5.0
react-native: https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz => 0.57.1
npmGlobalPackages:
expo-cli: 2.15.4

package.json

{
 "name":"abcde",
  "version": "13.15",
  "private": true,
  "devDependencies": {
    "babel-plugin-transform-remove-console": "^6.9.4",    
    "babel-preset-expo": "^5.0.0"
  },
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "eject": "expo eject",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "test": "node node_modules/jest/bin/jest.js"
  },  
  "dependencies": {
    "base-64": "^0.1.0",
    "dateformat": "^3.0.3",
    "expo": "^32.0.0",
    "moment": "^2.21.0",
    "native-base": "^2.4.5",
    "react": "16.5.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz",
    "react-native-calendars": "^1.19.3",
    "react-native-elements": "^0.19.1",
    "react-native-gifted-chat": "^0.4.3",
    "react-native-image-picker": "^0.26.10",
    "react-native-material-bottom-navigation": "^0.9.0",
    "react-native-paper": "^1.9.1",
    "react-native-progress": "^3.4.0",
    "react-native-snap-carousel": "^3.7.0",
    "react-native-vector-icons": "^4.6.0",
    "utf8": "^3.0.0",
    "validate.js": "^0.12.0"
  }
}

app.json

{
	"expo": {
		"name": "abcde",
		"privacy": "unlisted",
		"version":"13.15",
		"sdkVersion": "32.0.0",
		"assetBundlePatterns": [
			"assets/images/*",
			"assets/fonts/*"
		],
		"orientation": "portrait", 
		"slug": "abcde",
		"updates":{
			"fallbackToCacheTimeout":0
		},
		"splash": {
			"backgroundColor": "#FFFFFF",
			"image": "./assets/images/splash.png"
		},
		"notification": {
			"icon": "./assets/images/96bw.png"
		},
		"ios": {
			"icon": "./assets/images/1024square.png",
			"bundleIdentifier": "net.abcde.abcde",
			"buildNumber":"13.15",
			"supportsTablet":true,
			"loadJSInBackgroundExperimental": false,
			"infoPlist": {
					"NSAppTransportSecurity" : {
						"NSAllowsArbitraryLoads" : true,
						"NSAllowsArbitraryLoadsForMedia": true, 
						"NSAllowsArbitraryLoadsInWebContent": true, 
						"NSExceptionAllowsInsecureHTTPLoads": true
					},
					"NSPhotoLibraryAddUsageDescription":"to upload message",
					"NSPhotoLibraryUsageDescription" : "to upload message"
					
			}
		},
		"facebookScheme":"fb123456789",
		"facebookAppId":"123456789",
		"facebookDisplayName":"abcde",
		"scheme":"abcde"
	}
}

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.