Description
Build/Submit details page URL
https://expo.dev/accounts/mob_dev/projects/usteda/builds/4801382a-9816-42f0-a9d1-108e8a0aa798
Summary
Run iOS production builds locally and in expo cloud.
And then run on my device.
This app cannot be installed because its integrity could not be verified.
Managed or bare?
Bare
Environment
npx expo-env-info
expo-env-info 1.2.0 environment info:
System:
OS: macOS 14.5
Shell: 5.9 - /bin/zsh
Binaries:
Node: 18.18.2 - ~/.nvm/versions/node/v18.18.2/bin/node
Yarn: 1.22.19 - ~/.yarn/bin/yarn
npm: 9.8.1 - ~/.nvm/versions/node/v18.18.2/bin/npm
Watchman: 2024.07.15.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.15.2 - /Users/mahirkadic/.rvm/gems/ruby-3.0.0/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 24.0, iOS 18.0, macOS 15.0, tvOS 18.0, visionOS 2.0, watchOS 11.0
Android SDK:
API Levels: 23, 28, 29, 30, 31, 32, 33, 34
Build Tools: 28.0.3, 29.0.2, 29.0.3, 30.0.0, 30.0.2, 30.0.3, 31.0.0, 32.0.0, 32.1.0, 33.0.0, 33.0.1, 34.0.0
System Images: android-28 | Google ARM64-V8a Play ARM 64 v8a, android-32 | Google APIs ARM 64 v8a, android-33 | Google Play ARM 64 v8a
IDEs:
Android Studio: 2022.3 AI-223.8836.35.2231.10811636
Xcode: 16.0/16A242d - /usr/bin/xcodebuild
npmPackages:
expo: ~51.0.37 => 51.0.37
expo-router: ~3.5.21 => 3.5.23
metro: 0.80.8 => 0.80.8
react: 18.2.0 => 18.2.0
react-dom: 18.2.0 => 18.2.0
react-native: 0.74.5 => 0.74.5
npmGlobalPackages:
eas-cli: 12.5.2
expo-cli: 6.3.10
Expo Workflow: bare
npx expo-doctor
✔ Check Expo config for common issues
✔ Check package.json for common issues
✔ Check dependencies for packages that should not be installed directly
✔ Check for common project setup issues
✔ Check npm/ yarn versions
✔ Check for issues with metro config
✔ Check if the project meets version requirements for submission to app stores
✔ Check for app config fields that may not be synced in a non-CNG project
✔ Check Expo config (app.json/ app.config.js) schema
✔ Check native tooling versions
✔ Check that packages match versions required by installed Expo SDK
✔ Check that native modules do not use incompatible support packages
✔ Check for legacy global CLI installed locally
✔ Check that native modules use compatible support package versions for installed Expo SDK
Didn't find any issues with the project!
Error output
So here is what happened, at some point I started getting these errors below
[INSTALL_PODS] [!] [Codegen] warn: using experimental new codegen integration
[INSTALL_PODS] [!] `<PBXResourcesBuildPhase UUID=`13B07F8E1A680F5B00A75B9A`>` attempted to initialize an object with an unknown UUID. `5EE992E55BDD4265AB5AE30F` for attribute: `files`. This can be the result of a merge and the unknown UUID is being discarded.
[INSTALL_PODS] [!] Can't merge pod_target_xcconfig for pod targets: ["expo-dev-menu", "Main", "ReactNativeCompatibles", "SafeAreaView", "Vendored"]. Singular build setting DEFINES_MODULE has different values.
[INSTALL_PODS] [!] Can't merge pod_target_xcconfig for pod targets: ["expo-dev-menu", "Main", "ReactNativeCompatibles", "SafeAreaView", "Vendored"]. Singular build setting DEFINES_MODULE has different values.
[INSTALL_PODS] [!] hermes-engine has added 1 script phase. Please inspect before executing a build. See `https://guides.cocoapods.org/syntax/podspec.html#script_phases` for more information.
EAS builds in cloud were working perfectly, but I still wanted to have ability to build locally.
Somewhere I read that to resolve this I would need to remove local certificates for that team and I did.
Then EAS cloud builds started giving me troubles, building successfully but when I install the app it says unable to install.
This app cannot be installed because its integrity could not be verified.
Then what I did is I removed every certificate from app store and every from expo.
And generated again with eas credentials
But still the same
App config
import { ExpoConfig, ConfigContext } from '@expo/config';
require('dotenv').config();
const IS_DEV = process.env.APP_VARIANT === 'development';
const IS_PREVIEW = process.env.APP_VARIANT === 'preview';
export default ({ config }: ConfigContext): ExpoConfig => ({
...config,
name: IS_DEV ? 'Usteda (Dev)' : IS_PREVIEW ? 'Usteda (Preview)' : 'Usteda',
slug: 'usteda',
owner: 'mob_dev',
scheme: 'usteda',
version: '1.0.9',
orientation: 'portrait',
icon: `./src/assets/shopCart.png`,
userInterfaceStyle: 'light',
jsEngine: 'hermes',
splash: {
// image: `./src/assets/images/${
// IS_DEV ? 'splash_development' : IS_PREVIEW ? 'splash_development' : 'splash_preview'
// }.png`,
resizeMode: 'cover',
backgroundColor: '#fff',
// image: './src/assets/shopCart.png',
},
updates: {
fallbackToCacheTimeout: 5000,
},
runtimeVersion: {
policy: 'sdkVersion', // use this when you want to use Expo Go to run your app, e.g. Expo 49
// policy: "appVersion", // use this when you want to publish an update to your EAS
},
assetBundlePatterns: ['**/*'],
ios: {
buildNumber: '10',
googleServicesFile: IS_DEV
? './firebase/GoogleService-Info-development.plist'
: './firebase/GoogleService-Info.plist',
associatedDomains: ['applinks:com.usteda'],
supportsTablet: true,
bundleIdentifier: 'com.usteda' + (IS_DEV ? '.develop' : ''),
infoPlist: {
UIBackgroundModes: ['remote-notification'],
CFBundleURLTypes: [
{
CFBundleURLSchemes: ['usteda', 'com.usteda'],
},
],
},
entitlements: {
'aps-environment': 'production',
},
splash: {
backgroundColor: '#fff',
resizeMode: 'cover',
// image: './src/assets/shopCart.png',
},
},
android: {
googleServicesFile: IS_DEV
? './firebase/google-services-development.json'
: './firebase/google-services.json',
package: 'com.usteda' + (IS_DEV ? '.develop' : IS_PREVIEW ? '.preview' : ''),
versionCode: 21,
// permissions: [
// "RECORD_AUDIO",
// "WRITE_EXTERNAL_STORAGE",
// "READ_EXTERNAL_STORAGE",
// ],
adaptiveIcon: {
// foregroundImage: './assets/adaptive-icon.png',
backgroundColor: '#ffffff',
},
intentFilters: [
{
action: 'VIEW',
data: [
{
scheme: 'https',
host: 'expo.ba',
pathPrefix: '/',
},
],
category: ['BROWSABLE', 'DEFAULT'],
},
{
action: 'VIEW',
data: [
{
scheme: 'https',
host: 'usteda.page.link',
pathPrefix: '/',
},
],
category: ['BROWSABLE', 'DEFAULT'],
},
],
},
web: {
favicon: './assets/favicon.png',
},
extra: {
eas: {
projectId: '00000000-0000-0000-0000-000000000000',
},
},
plugins: [
'@config-plugins/react-native-blob-util',
'@config-plugins/react-native-pdf',
'@react-native-firebase/app',
'@react-native-firebase/crashlytics',
'@react-native-firebase/messaging',
'@react-native-firebase/dynamic-links',
[
'expo-build-properties',
{
ios: {
useFrameworks: 'static',
},
android: {
usesCleartextTraffic: true,
},
},
],
[
'react-native-vision-camera',
{
cameraPermissionText:
'$(PRODUCT_NAME) je potreban pristup kameri da skenira barkodove i QR kodove.',
},
],
'./plugins/disableForcedDarkModeAndroid.ts',
'./plugins/withBoringSSLFix.js',
'expo-router',
[
'@react-native-firebase/app',
{
analytics_auto_collection_enabled: true,
},
],
],
});
Reproducible demo or steps to reproduce from a blank project
Not sure how to do it on the blank project