Can't use dev mode after updating v27

I’m developing with detached project.
After i updating, I can’t use dev mode. My app doesn’t connect to XDE, it uses only published bundle & datas.
(publishing is working anyway)

Can anyone help me?

Could you please share more information about the platform, OS, computer, how you upgraded, from what version did you upgrade?

@bacon

platform : iOS (i’ve not tested on android)
OS : macOS High Sierra 10.13.4
Expo XDE : 2.24.4 (2.24.4.53441)
exp --version : 53.1.0

I detached my project at expo v26 and I upgraded to v27 yesterday.
then followed

  1. Expo SDK v27.0.0 is now available | by Ben Roth | Exposition
  2. https://docs.expo.io/versions/latest/expokit/expokit#upgrading-expokit
  3. https://gist.github.com/janicduplessis/30ec95451733d34ffcf7d5cb27ba0e28

[situation]

  1. When start my app, it’s working without OTA. It looks totally detached with whole packed bundle.
  2. Problem is, It doesn’t connect to XDE or exp anymore. I wanna hot load (or minimized reload) for development. After upgrade, I have to publish everytime when modified my source code. (the hot loader was working on detached v26 project)
  3. and flag __ DEV __ is not working. Even I run my app with debug configuration.

(all case are tested on ios simulator)

  • more
  1. I tried changed field “updates.enabled”, “updates.checkAutomatically” in app.json. (It’s not working)

I wanna use OTA in dev mode and off OTA in publish mode. Is it possible?
Please help me. Save my life…
Thanks!

Hi there!

If Xcode is building a Debug scheme, it will fetch the development url configured inside EXBuildConstants.plist. This url is configured automatically by exp every time you build from Xcode.

If Xcode is building a Release scheme, it will fetch the published/production url configured inside EXShell.plist.

1 Like

@ben

I’m using Debug scheme. (Double checked)

The “developmentUrl” is weird in my EXBuildConstants.plist?
Let me share my files.

Thanks

==== EXBuildConstants.plist ====

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>DEFAULT_API_KEYS</key>
	<dict>
		<key>AMPLITUDE_KEY</key>
		<string>#########################</string>
		<key>GOOGLE_MAPS_IOS_API_KEY</key>
		<string></string>
	</dict>
	<key>EXPO_RUNTIME_VERSION</key>
	<string>2.4.4</string>
	<key>STANDALONE_CONTEXT_TYPE</key>
	<string>user</string>
	<key>developmentUrl</key>
	<string>expda9b4923076a464f986c78cba8dfd005://192.168.219.105:19000</string>
</dict>
</plist>

==== Info.plist ====

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>en</string>
	<key>CFBundleDisplayName</key>
	<string>Coinplay</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>com.madtail.coinplay</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>Coinplay</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0.23</string>
	<key>CFBundleURLTypes</key>
	<array>
		<dict>
			<key>CFBundleURLSchemes</key>
			<array>
				<string>coinplay</string>
				<string>expda9b4923076a464f986c78cba8dfd005</string>
				<string>fb215523072369895</string>
			</array>
		</dict>
		<dict>
			<key>CFBundleURLName</key>
			<string>OAuthRedirect</string>
			<key>CFBundleURLSchemes</key>
			<array>
				<string>com.madtail.coinplay</string>
			</array>
		</dict>
	</array>
	<key>FacebookAppID</key>
	<string>215523072369895</string>
	<key>FacebookDisplayName</key>
	<string>Coinplay</string>
	<key>LSApplicationQueriesSchemes</key>
	<array>
		<string>fbapi</string>
		<string>fb-messenger-share-api</string>
		<string>fbauth2</string>
		<string>fbshareextension</string>
	</array>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>Fabric</key>
	<dict>
		<key>APIKey</key>
		<string>81130e95ea13cd7ed9a4f455e96214902c721c99</string>
		<key>Kits</key>
		<array>
			<dict>
				<key>KitInfo</key>
				<dict/>
				<key>KitName</key>
				<string>Crashlytics</string>
			</dict>
		</array>
	</dict>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>NSAppTransportSecurity</key>
	<dict>
		<key>NSAllowsArbitraryLoads</key>
		<true/>
	</dict>
	<key>NSCalendarsUsageDescription</key>
	<string>Allow Coinplay to access your calendar</string>
	<key>NSCameraUsageDescription</key>
	<string>Allow Coinplay to use your camera</string>
	<key>NSContactsUsageDescription</key>
	<string>Allow Coinplay to access your contacts</string>
	<key>NSLocationWhenInUseUsageDescription</key>
	<string>Allow Coinplay to use your location</string>
	<key>NSMicrophoneUsageDescription</key>
	<string>Allow Coinplay to access your microphone</string>
	<key>NSMotionUsageDescription</key>
	<string>Allow Coinplay to access your device's accelerometer</string>
	<key>NSPhotoLibraryAddUsageDescription</key>
	<string>Give Coinplay permission to save photos</string>
	<key>NSPhotoLibraryUsageDescription</key>
	<string>Give Coinplay permission to access your photos</string>
	<key>NSRemindersUsageDescription</key>
	<string>Allow Coinplay to access your reminders</string>
	<key>UIAppFonts</key>
	<array>
		<string>Entypo.ttf</string>
		<string>EvilIcons.ttf</string>
		<string>Feather.ttf</string>
		<string>FontAwesome.ttf</string>
		<string>Foundation.ttf</string>
		<string>Ionicons.ttf</string>
		<string>MaterialCommunityIcons.ttf</string>
		<string>MaterialIcons.ttf</string>
		<string>Octicons.ttf</string>
		<string>SimpleLineIcons.ttf</string>
		<string>Zocial.ttf</string>
	</array>
	<key>UIBackgroundModes</key>
	<array>
		<string>remote-notification</string>
	</array>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array/>
	<key>UIRequiresFullScreen</key>
	<true/>
	<key>UIStatusBarStyle</key>
	<string>UIStatusBarStyleLightContent</string>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
	</array>
	<key>UIViewControllerBasedStatusBarAppearance</key>
	<false/>
</dict>
</plist>

expda9b4923076a464f986c78cba8dfd005://192.168.219.105:19000 is a normal development url for ExpoKit. This should be the url that your app tries to open if you build a Debug scheme. This should also be the same url you see being served from XDE or exp.

1 Like

@ben

I found a solution.
The weird thing is… the development url isn’t updated even I clicked “Restart” button in Exp XDE. It’s working after I changed it manually.

Thanks!

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