mirror of https://github.com/status-im/metro.git
Generate bundle and assets when building via Xcode
Summary: This integrates React Native into Xcode's build process, which lets us automatically handle bundling and packaging image assets. Tested the script via https://github.com/frantic/ReactNativeAssetsExample Loaded from packager: <img width="432" alt="screen shot 2015-10-19 at 3 11 12 pm" src="https://cloud.githubusercontent.com/assets/192222/10593447/be5bc7e8-7678-11e5-8c70-ecc2a1ee24fc.png"> Loaded from offline bundle: <img width="432" alt="screen shot 2015-10-19 at 3 10 58 pm" src="https://cloud.githubusercontent.com/assets/192222/10593448/be5d5194-7678-11e5-8b02-d492a26cfb81.png"> Android: <img width="639" alt="screen shot 2015-10-19 at 3 11 20 pm" src="https://cloud.githubusercontent.com/assets/192222/10593449/be5de2d0-7678-11e5-8d3c-0378fc447f15.png"> Closes https://github.com/facebook/react-native/pull/3523 Reviewed By: mkonicek Differential Revision: D2557923 Pulled By: frantic fb-gh-sync-id: 19957e255993696e793b0162662772efd89f5c1a
This commit is contained in:
parent
c9510765a4
commit
cf61ca9002
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# Copyright (c) 2015-present, Facebook, Inc.
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# This source code is licensed under the BSD-style license found in the
|
||||||
|
# LICENSE file in the root directory of this source tree. An additional grant
|
||||||
|
# of patent rights can be found in the PATENTS file in the same directory.
|
||||||
|
|
||||||
|
# Bundle React Native app's code and image assets.
|
||||||
|
# This script is supposed to be invoked as part of Xcode build process
|
||||||
|
# and relies on envoronment variables (including PWD) set by Xcode
|
||||||
|
|
||||||
|
case "$CONFIGURATION" in
|
||||||
|
Debug)
|
||||||
|
DEV=true
|
||||||
|
;;
|
||||||
|
Release)
|
||||||
|
DEV=false
|
||||||
|
;;
|
||||||
|
"")
|
||||||
|
echo "$0 must be invoked by Xcode"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unsupported value of \$CONFIGURATION=$CONFIGURATION"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Xcode project file for React Native apps is located in ios/ subfolder
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
set -x
|
||||||
|
DEST=$CONFIGURATION_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH
|
||||||
|
|
||||||
|
react-native bundle \
|
||||||
|
--entry-file index.ios.js \
|
||||||
|
--platform ios \
|
||||||
|
--dev $DEV \
|
||||||
|
--bundle-output "$DEST/main.jsbundle" \
|
||||||
|
--assets-dest "$DEST"
|
Loading…
Reference in New Issue