expo / turtle

Standalone app builder service
MIT License
384 stars 29 forks source link

Images not showing #277

Closed dernster closed 3 years ago

dernster commented 3 years ago

Question Subject

Images not showing up in iOS.

Question Description

First of all, I'm not sure if this is an actual issue but I wanted to share what I'm currently experiencing. This is the output of expo diagnostics:

Expo CLI 3.28.5 environment info:
    System:
      OS: macOS 10.15.6
      Shell: 5.7.1 - /bin/zsh
    Binaries:
      Node: 10.15.0 - ~/.nodenv/versions/10.15.0/bin/node
      Yarn: 1.22.10 - ~/.nodenv/versions/10.15.0/bin/yarn
      npm: 6.4.1 - ~/.nodenv/versions/10.15.0/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    Managers:
      CocoaPods: 1.10.0 - /Users/dernst/.rvm/gems/ruby-2.6.3@latest/bin/pod
    SDKs:
      iOS SDK:
        Platforms: iOS 14.0, DriverKit 19.0, macOS 10.15, tvOS 14.0, watchOS 7.0
      Android SDK:
        API Levels: 23, 25, 27, 28
        Build Tools: 23.0.1, 27.0.3, 28.0.2, 28.0.3
        System Images: android-28 | Google APIs Intel x86 Atom
        Android NDK: 19.2.5345600
    IDEs:
      Xcode: 12.0.1/12A7300 - /usr/bin/xcodebuild
    npmPackages:
      expo: ^38.0.0 => 38.0.4 
      react-native: https://github.com/expo/react-native/archive/sdk-38.0.0.tar.gz => 0.62.2 
    npmGlobalPackages:
      expo-cli: 3.28.5
    Expo Workflow: managed

I built my application before the last version of turtle (0.19.0) that was published some hours ago and everything was working fine. After that last turtle release, I'm experiencing that images in iOS are not showing up (every Image component is not rendering). I think this is caused by the Xcode update to 12.1 and probably related to this react-native issue 29279. I saw there is a patch that can be applied to RCTUIImageViewAnimated.m but I believe I'm not able to do this with the managed workflow. I'm currently using the Expo SDK 38 and it seems the the react native version 0.62.2 has that Image rendering issue on iOS 14.

Is there any way I could use an old version of the turtle service? Or is there any path I should follow to solve this?

Thanks!

dernster commented 3 years ago

I confirmed the app works fine on iOS 13 and this issue is only happening on iOS 14.

jacobworman commented 3 years ago

Same issue

pablaber commented 3 years ago

I was having the same issue but fixed it by upgrading to Expo SDK 39

dernster commented 3 years ago

thanks @pablaber ! I'm trying to avoid the Expo SDK upgrade because I had some issues in the "first try" of upgrade and I really need to push an update for my application :/

dernster commented 3 years ago

@jacobworman @pablaber

Ok, so I was able to get a proper build of my app by building locally. What I did was:

  1. Install turtle-ci (version 0.18.9): npm install -g turtle-cli@0.18.9
  2. Install Xcode 12.0.1
  3. Install fastlane: brew install fastlane
  4. Download all certificates of the app by running: expo fetch:ios:certs
  5. Follow this expo guide

I think that what solved the issue was the Xcode version being used and not downgrading the turtle-ci version. But anyways, I went with the previous turtle-ci version and it worked :)

jacobworman commented 3 years ago

Did it work on iOS 14?

brentvatne commented 3 years ago

this is resolved now. we had to rollback to building shell apps using xcode 11, we'll fix the underlying issue and move back to xcode 12 soon. https://github.com/expo/expo/issues/11037#issuecomment-728246741

i also rolled back the latest turtle-cli version to 0.18.9

sorry for the hassle!