iOS: use recommended variable for bundle ID

We used to hard-code the bundle ID which meant that developers always had to
manually override the bundle ID in order to be able to sign the iOS app for
local testing.  With this change, the official builds will continue to work
without manually opening the project in Xcode, yet other developers will use
the Apple-recommended format in order to set their own bundle ID.

This is based on a suggestion by Murillo Bernardes.

See #1246

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Murillo Bernardes 2018-05-07 20:46:36 +02:00 committed by Dirk Hohndel
parent 161e5e94fc
commit 7d6a48b59f
3 changed files with 10 additions and 3 deletions

View file

@ -11,7 +11,7 @@
<key>CFBundleIconName</key>
<string>AppIcon</string>
<key>CFBundleIdentifier</key>
<string>org.subsurface-divelog.subsurface-mobile</string>
<string>@PRODUCT_BUNDLE_IDENTIFIER@</string>
<key>CFBundleName</key>
<string>Subsurface-mobile</string>
<key>CFBundlePackageType</key>

View file

@ -4,6 +4,7 @@
set -x
set -e
PRODUCT_BUNDLE_IDENTIFIER="\$(PRODUCT_BUNDLE_IDENTIFIER)"
DEBUGRELEASE="Release"
DRCONFIG="release"
ARCHS="armv7 arm64 x86_64"
@ -13,6 +14,12 @@ TARGET2="Device"
while [[ $# -gt 0 ]] ; do
arg="$1"
case $arg in
-official)
# build an app identified as org.subsurface-divelog.subsurface-mobile
# without having to set this explicitly in Xcode (this way this works,
# e.g., in Travis)
PRODUCT_BUNDLE_IDENTIFIER="org.subsurface-divelog.subsurface-mobile"
;;
-debug)
# build for debugging
DEBUGRELEASE="Debug"
@ -80,7 +87,7 @@ echo "#define CANONICAL_VERSION_STRING \"$CANONICALVERSION\"" >> subsurface-mobi
echo "#define MOBILE_VERSION_STRING \"$MOBILEVERSION\"" >> subsurface-mobile/ssrf-version.h
# create Info.plist with the correct versions
cat Info.plist.in | sed "s/@MOBILE_VERSION@/$MOBILEVERSION/;s/@CANONICAL_VERSION@/$CANONICALVERSION/" > Info.plist
cat Info.plist.in | sed "s/@MOBILE_VERSION@/$MOBILEVERSION/;s/@CANONICAL_VERSION@/$CANONICALVERSION/;s/@PRODUCT_BUNDLE_IDENTIFIER@/$PRODUCT_BUNDLE_IDENTIFIER/" > Info.plist
if [ "$1" = "version" ] ; then
exit 0

View file

@ -12,7 +12,7 @@ VERSION=$(echo $GITVERSION | sed -e 's/-/./')
echo "preparing dependencies for Subsurface-mobile ${VERSION} for iOS"
cd packaging/ios
bash -x build.sh -simulator
bash -x build.sh -simulator -official
echo "now it's time to build Subsurface-mobile ${VERSION} for iOS"