Skip to content

Commit 242663b

Browse files
committed
feat: setup react native keyboard controller + remover soft input
1 parent 6450346 commit 242663b

File tree

20 files changed

+513
-404
lines changed

20 files changed

+513
-404
lines changed

android/app/build.gradle

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,27 @@ apply plugin: "com.facebook.react"
44

55
def projectRoot = rootDir.getAbsoluteFile().getParentFile().getAbsolutePath()
66

7+
static def versionToNumber(major, minor, patch) {
8+
return patch * 100 + minor * 10000 + major * 1000000
9+
}
10+
11+
def getRNVersion() {
12+
def version = providers.exec {
13+
workingDir(projectDir)
14+
commandLine("node", "-e", "console.log(require('react-native/package.json').version);")
15+
}.standardOutput.asText.get().trim()
16+
17+
def coreVersion = version.split("-")[0]
18+
def (major, minor, patch) = coreVersion.tokenize('.').collect { it.toInteger() }
19+
20+
return versionToNumber(
21+
major,
22+
minor,
23+
patch
24+
)
25+
}
26+
def rnVersion = getRNVersion()
27+
728
/**
829
* This is the configuration block to customize your React Native Android app.
930
* By default you don't need to apply any configuration, just uncomment the lines you need.
@@ -57,6 +78,11 @@ react {
5778
//
5879
// The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map"
5980
// hermesFlags = ["-O", "-output-source-map"]
81+
82+
if (rnVersion >= versionToNumber(0, 75, 0)) {
83+
/* Autolinking */
84+
autolinkLibrariesWithApp()
85+
}
6086
}
6187

6288
/**
@@ -110,6 +136,7 @@ android {
110136
shrinkResources (findProperty('android.enableShrinkResourcesInReleaseBuilds')?.toBoolean() ?: false)
111137
minifyEnabled enableProguardInReleaseBuilds
112138
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
139+
crunchPngs (findProperty('android.enablePngCrunchInReleaseBuilds')?.toBoolean() ?: true)
113140
}
114141
}
115142
packagingOptions {
@@ -168,5 +195,7 @@ dependencies {
168195
}
169196
}
170197

171-
apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle");
172-
applyNativeModulesAppBuildGradle(project)
198+
if (rnVersion < versionToNumber(0, 75, 0)) {
199+
apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle");
200+
applyNativeModulesAppBuildGradle(project)
201+
}

android/app/src/main/res/values/styles.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
<item name="android:editTextStyle">@style/ResetEditText</item>
55
<item name="android:editTextBackground">@drawable/rn_edit_text_material</item>
66
<item name="colorPrimary">@color/colorPrimary</item>
7-
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
87
<item name="android:statusBarColor">#2E3C4B</item>
98
</style>
109
<style name="ResetEditText" parent="@android:style/Widget.EditText">

android/gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ android.useAndroidX=true
2525
# Automatically convert third-party libraries to use AndroidX
2626
android.enableJetifier=true
2727

28+
# Enable AAPT2 PNG crunching
29+
android.enablePngCrunchInReleaseBuilds=true
30+
2831
# Use this property to specify which architecture you want to build.
2932
# You can also override it from the CLI using
3033
# ./gradlew <task> -PreactNativeArchitectures=x86_64
@@ -54,6 +57,3 @@ EX_DEV_CLIENT_NETWORK_INSPECTOR=true
5457

5558
# Use legacy packaging to compress native libraries in the resulting APK.
5659
expo.useLegacyPackaging=false
57-
58-
android.kotlinVersion=1.7.22
59-
android.extraMavenRepos=[]
-9 Bytes
Binary file not shown.

android/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-all.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2+
3+
plugins {
4+
kotlin("jvm") version "1.9.24"
5+
id("java-gradle-plugin")
6+
}
7+
8+
repositories {
9+
mavenCentral()
10+
}
11+
12+
gradlePlugin {
13+
plugins {
14+
create("reactSettingsPlugin") {
15+
id = "com.facebook.react.settings"
16+
implementationClass = "expo.plugins.ReactSettingsPlugin"
17+
}
18+
}
19+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package expo.plugins
2+
3+
import org.gradle.api.Plugin
4+
import org.gradle.api.initialization.Settings
5+
6+
class ReactSettingsPlugin : Plugin<Settings> {
7+
override fun apply(settings: Settings) {
8+
// Do nothing, just register the plugin.
9+
}
10+
}

android/settings.gradle

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,49 @@
1+
pluginManagement {
2+
def version = providers.exec {
3+
commandLine("node", "-e", "console.log(require('react-native/package.json').version);")
4+
}.standardOutput.asText.get().trim()
5+
def (_, reactNativeMinor, reactNativePatch) = version.split("-")[0].tokenize('.').collect { it.toInteger() }
6+
7+
includeBuild(new File(["node", "--print", "require.resolve('@react-native/gradle-plugin/package.json')"].execute(null, rootDir).text.trim()).getParentFile().toString())
8+
if(reactNativeMinor == 74 && reactNativePatch <= 3){
9+
includeBuild("react-settings-plugin")
10+
}
11+
}
12+
13+
plugins { id("com.facebook.react.settings") }
14+
15+
def getRNMinorVersion() {
16+
def version = providers.exec {
17+
commandLine("node", "-e", "console.log(require('react-native/package.json').version);")
18+
}.standardOutput.asText.get().trim()
19+
20+
def coreVersion = version.split("-")[0]
21+
def (major, minor, patch) = coreVersion.tokenize('.').collect { it.toInteger() }
22+
23+
return minor
24+
}
25+
26+
if (getRNMinorVersion() >= 75) {
27+
extensions.configure(com.facebook.react.ReactSettingsExtension) { ex ->
28+
if (System.getenv('EXPO_UNSTABLE_CORE_AUTOLINKING') == '1') {
29+
println('\u001B[32mUsing expo-modules-autolinking as core autolinking source\u001B[0m')
30+
def command = [
31+
'node',
32+
'--no-warnings',
33+
'--eval',
34+
'require(require.resolve(\'expo-modules-autolinking\', { paths: [require.resolve(\'expo/package.json\')] }))(process.argv.slice(1))',
35+
'react-native-config',
36+
'--json',
37+
'--platform',
38+
'android'
39+
].toList()
40+
ex.autolinkLibrariesFromCommand(command)
41+
} else {
42+
ex.autolinkLibrariesFromCommand()
43+
}
44+
}
45+
}
46+
147
rootProject.name = 'ObytesApp'
248

349
dependencyResolutionManagement {
@@ -11,8 +57,10 @@ dependencyResolutionManagement {
1157
apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle");
1258
useExpoModules()
1359

14-
apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle");
15-
applyNativeModulesSettingsGradle(settings)
60+
if (getRNMinorVersion() < 75) {
61+
apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle");
62+
applyNativeModulesSettingsGradle(settings)
63+
}
1664

1765
include ':app'
1866
includeBuild(new File(["node", "--print", "require.resolve('@react-native/gradle-plugin/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile())

app.config.ts

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,6 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
5050
],
5151
'expo-localization',
5252
'expo-router',
53-
[
54-
'expo-build-properties',
55-
{
56-
android: {
57-
kotlinVersion: '1.7.22', // this is for softinput package
58-
},
59-
},
60-
],
6153
[
6254
'app-icon-badge',
6355
{

ios/ObytesApp.xcodeproj/project.pbxproj

Lines changed: 29 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -10,31 +10,33 @@
1010
13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
1111
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
1212
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
13-
2BF6716714BC45DB988DE1A7 /* Inter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 5B563A57B4F44FC1B745C100 /* Inter.ttf */; };
1413
3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; };
15-
891010F7B96C4D6FA2B1FB22 /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAC19BC1D2E04272BC7DF4BC /* noop-file.swift */; };
14+
5D8F3C2362D24F619EDCDE00 /* Inter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 37D90FF4F0EA44F3B61B1F18 /* Inter.ttf */; };
1615
96905EF65AED1B983A6B3ABC /* libPods-ObytesApp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-ObytesApp.a */; };
1716
B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; };
17+
BA27675D81B61B7B831BBB16 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 08A38DF0972D84B2ABA37617 /* PrivacyInfo.xcprivacy */; };
1818
BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; };
19+
DF1CA3A894994D478C7276ED /* noop-file.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4968435ABAD420FA1E63F07 /* noop-file.swift */; };
1920
/* End PBXBuildFile section */
2021

2122
/* Begin PBXFileReference section */
23+
08A38DF0972D84B2ABA37617 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = ObytesApp/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
2224
13B07F961A680F5B00A75B9A /* ObytesApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ObytesApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
2325
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ObytesApp/AppDelegate.h; sourceTree = "<group>"; };
2426
13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = ObytesApp/AppDelegate.mm; sourceTree = "<group>"; };
2527
13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = ObytesApp/Images.xcassets; sourceTree = "<group>"; };
2628
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = ObytesApp/Info.plist; sourceTree = "<group>"; };
2729
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = ObytesApp/main.m; sourceTree = "<group>"; };
30+
37D90FF4F0EA44F3B61B1F18 /* Inter.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = undefined; includeInIndex = 0; lastKnownFileType = unknown; name = Inter.ttf; path = ../assets/fonts/Inter.ttf; sourceTree = "<group>"; };
2831
58EEBF8E8E6FB1BC6CAF49B5 /* libPods-ObytesApp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ObytesApp.a"; sourceTree = BUILT_PRODUCTS_DIR; };
29-
5B563A57B4F44FC1B745C100 /* Inter.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = undefined; includeInIndex = 0; lastKnownFileType = unknown; name = Inter.ttf; path = ../assets/fonts/Inter.ttf; sourceTree = "<group>"; };
3032
6C2E3173556A471DD304B334 /* Pods-ObytesApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ObytesApp.debug.xcconfig"; path = "Target Support Files/Pods-ObytesApp/Pods-ObytesApp.debug.xcconfig"; sourceTree = "<group>"; };
3133
7A4D352CD337FB3A3BF06240 /* Pods-ObytesApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ObytesApp.release.xcconfig"; path = "Target Support Files/Pods-ObytesApp/Pods-ObytesApp.release.xcconfig"; sourceTree = "<group>"; };
3234
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = ObytesApp/SplashScreen.storyboard; sourceTree = "<group>"; };
3335
BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; sourceTree = "<group>"; };
34-
EAC19BC1D2E04272BC7DF4BC /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "ObytesApp/noop-file.swift"; sourceTree = "<group>"; };
3536
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
36-
F217B54747B6443B8779AE40 /* ObytesApp-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "ObytesApp-Bridging-Header.h"; path = "ObytesApp/ObytesApp-Bridging-Header.h"; sourceTree = "<group>"; };
37+
F4968435ABAD420FA1E63F07 /* noop-file.swift */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.swift; name = "noop-file.swift"; path = "ObytesApp/noop-file.swift"; sourceTree = "<group>"; };
3738
FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-ObytesApp/ExpoModulesProvider.swift"; sourceTree = "<group>"; };
39+
FDC76194471C440085A95A27 /* ObytesApp-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "ObytesApp-Bridging-Header.h"; path = "ObytesApp/ObytesApp-Bridging-Header.h"; sourceTree = "<group>"; };
3840
/* End PBXFileReference section */
3941

4042
/* Begin PBXFrameworksBuildPhase section */
@@ -49,15 +51,6 @@
4951
/* End PBXFrameworksBuildPhase section */
5052

5153
/* Begin PBXGroup section */
52-
047711CE380F466F9CD3C9E2 /* Resources */ = {
53-
isa = PBXGroup;
54-
children = (
55-
5B563A57B4F44FC1B745C100 /* Inter.ttf */,
56-
);
57-
name = Resources;
58-
path = "";
59-
sourceTree = "<group>";
60-
};
6154
13B07FAE1A68108700A75B9A /* ObytesApp */ = {
6255
isa = PBXGroup;
6356
children = (
@@ -68,8 +61,9 @@
6861
13B07FB61A68108700A75B9A /* Info.plist */,
6962
13B07FB71A68108700A75B9A /* main.m */,
7063
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */,
71-
EAC19BC1D2E04272BC7DF4BC /* noop-file.swift */,
72-
F217B54747B6443B8779AE40 /* ObytesApp-Bridging-Header.h */,
64+
F4968435ABAD420FA1E63F07 /* noop-file.swift */,
65+
FDC76194471C440085A95A27 /* ObytesApp-Bridging-Header.h */,
66+
08A38DF0972D84B2ABA37617 /* PrivacyInfo.xcprivacy */,
7367
);
7468
name = ObytesApp;
7569
sourceTree = "<group>";
@@ -83,6 +77,15 @@
8377
name = Frameworks;
8478
sourceTree = "<group>";
8579
};
80+
3A823E08E8F0485E8582F6B7 /* Resources */ = {
81+
isa = PBXGroup;
82+
children = (
83+
37D90FF4F0EA44F3B61B1F18 /* Inter.ttf */,
84+
);
85+
name = Resources;
86+
path = "";
87+
sourceTree = "<group>";
88+
};
8689
832341AE1AAA6A7D00B99B32 /* Libraries */ = {
8790
isa = PBXGroup;
8891
children = (
@@ -99,7 +102,7 @@
99102
2D16E6871FA4F8E400B85C8A /* Frameworks */,
100103
D65327D7A22EEC0BE12398D9 /* Pods */,
101104
D7E4C46ADA2E9064B798F356 /* ExpoModulesProviders */,
102-
047711CE380F466F9CD3C9E2 /* Resources */,
105+
3A823E08E8F0485E8582F6B7 /* Resources */,
103106
);
104107
indentWidth = 2;
105108
sourceTree = "<group>";
@@ -156,13 +159,13 @@
156159
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "ObytesApp" */;
157160
buildPhases = (
158161
08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */,
159-
D4C5FA3206A47CC465A5280A /* [Expo] Configure project */,
162+
9B074ED8B4BA47D9FE537166 /* [Expo] Configure project */,
160163
13B07F871A680F5B00A75B9A /* Sources */,
161164
13B07F8C1A680F5B00A75B9A /* Frameworks */,
162165
13B07F8E1A680F5B00A75B9A /* Resources */,
163166
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
164167
800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */,
165-
C8EE57B0B67A5FA98DF50EF5 /* [CP] Embed Pods Frameworks */,
168+
89E010EA0719900D8814EFBA /* [CP] Embed Pods Frameworks */,
166169
);
167170
buildRules = (
168171
);
@@ -212,7 +215,8 @@
212215
BB2F792D24A3F905000567C9 /* Expo.plist in Resources */,
213216
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
214217
3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */,
215-
2BF6716714BC45DB988DE1A7 /* Inter.ttf in Resources */,
218+
5D8F3C2362D24F619EDCDE00 /* Inter.ttf in Resources */,
219+
BA27675D81B61B7B831BBB16 /* PrivacyInfo.xcprivacy in Resources */,
216220
);
217221
runOnlyForDeploymentPostprocessing = 0;
218222
};
@@ -290,7 +294,7 @@
290294
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ObytesApp/Pods-ObytesApp-resources.sh\"\n";
291295
showEnvVarsInLog = 0;
292296
};
293-
C8EE57B0B67A5FA98DF50EF5 /* [CP] Embed Pods Frameworks */ = {
297+
89E010EA0719900D8814EFBA /* [CP] Embed Pods Frameworks */ = {
294298
isa = PBXShellScriptBuildPhase;
295299
buildActionMask = 2147483647;
296300
files = (
@@ -308,7 +312,7 @@
308312
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ObytesApp/Pods-ObytesApp-frameworks.sh\"\n";
309313
showEnvVarsInLog = 0;
310314
};
311-
D4C5FA3206A47CC465A5280A /* [Expo] Configure project */ = {
315+
9B074ED8B4BA47D9FE537166 /* [Expo] Configure project */ = {
312316
isa = PBXShellScriptBuildPhase;
313317
alwaysOutOfDate = 1;
314318
buildActionMask = 2147483647;
@@ -337,7 +341,7 @@
337341
13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */,
338342
13B07FC11A68108700A75B9A /* main.m in Sources */,
339343
B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */,
340-
891010F7B96C4D6FA2B1FB22 /* noop-file.swift in Sources */,
344+
DF1CA3A894994D478C7276ED /* noop-file.swift in Sources */,
341345
);
342346
runOnlyForDeploymentPostprocessing = 0;
343347
};
@@ -368,7 +372,7 @@
368372
);
369373
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG";
370374
PRODUCT_BUNDLE_IDENTIFIER = com.obytes.development;
371-
PRODUCT_NAME = "ObytesApp";
375+
PRODUCT_NAME = ObytesApp;
372376
SWIFT_OBJC_BRIDGING_HEADER = "ObytesApp/ObytesApp-Bridging-Header.h";
373377
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
374378
SWIFT_VERSION = 5.0;
@@ -396,7 +400,7 @@
396400
);
397401
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
398402
PRODUCT_BUNDLE_IDENTIFIER = com.obytes.development;
399-
PRODUCT_NAME = "ObytesApp";
403+
PRODUCT_NAME = ObytesApp;
400404
SWIFT_OBJC_BRIDGING_HEADER = "ObytesApp/ObytesApp-Bridging-Header.h";
401405
SWIFT_VERSION = 5.0;
402406
TARGETED_DEVICE_FAMILY = "1,2";

0 commit comments

Comments
 (0)