[TIMOB-28100] iOS: MediaModule.o compile error when packaging for app store
GitHub Issue | n/a |
Type | Bug |
Priority | Critical |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2020-09-08T14:37:31.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 9.2.0, Release 9.1.1 |
Components | iOS |
Labels | regression |
Reporter | Joe Falcone |
Assignee | Ewan Harris |
Created | 2020-08-26T01:09:32.000+0000 |
Updated | 2020-09-25T12:00:48.000+0000 |
Description
Just wanted to quickly alert you guys to a problem with Ti.Media on iOS. We were just packaging for the app store a current, functioning app which uses Ti.Media.AudioPlayer using the new 9.1.0.GA SDK and these MediaModule.o compile errors popped up. Same errors happened when using the 9.1.1 SDK. The same app builds fine with SDK 9.1.0.v20200814072027 and earlier SDKs.
[ERROR] : ** ARCHIVE FAILED **
[ERROR] : The following build commands failed:
[ERROR] : CompileC /Users/jrf/Studio/iCoastside/build/iphone/build/Intermediates/iCoastside.build/Release-iphoneos/iCoastside.build/Objects-normal/armv7/MediaModule.o /Users/jrf/Studio/iCoastside/build/iphone/Classes/MediaModule.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
[ERROR] : CompileC /Users/jrf/Studio/iCoastside/build/iphone/build/Intermediates/iCoastside.build/Release-iphoneos/iCoastside.build/Objects-normal/arm64/MediaModule.o /Users/jrf/Studio/iCoastside/build/iphone/Classes/MediaModule.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
[ERROR] : (2 failures)
I could put together a simple test case referencing Ti.Media but I figured it was more important to let you know that you've got a problem with a GA release ASAP.
Attachments
[~jfalcone], thanks for the bug report. I'm trying to reproduce this using kitchensink-v2 which also uses AudioPlayer but I'm unable to. Could you upload the full build_iphone.log file from your build directory, it might be that there is something else causing this error and it's just surfacing through the MediaModule file
[~jfalcone] thanks for the quick upload! I think I see the problem, and also why this isn't occuring in KS (it uses camera APIs). I'll move this over to TIMOB, and prepare a minimal sample code Specific error is
Minimal reproduction code below, paste into app.js and build to device
Build log attached. More details: Xcode [^build.log] 11.6 (11E708), and the app uses Hyperloop. [^build_iphone.log] Here is the error from the build log... [TRACE] /Users/jrf/Studio/iCoastside/build/iphone/Classes/MediaModule.m:1828:26: error: use of undeclared identifier 'picker' [TRACE] [self closeModalPicker:picker]; [TRACE] ^ [TRACE] 1 error generated. Probably this in mediaModule.m
Thank you... this is from our use of Ti.Media.createAudioPlayer so different from camera api.
PR: https://github.com/appcelerator/titanium_mobile/pull/11968
[~jfalcone], yup you're right! If my understanding is right (I'm not a real iOS dev ;)) then guarding with an ifdef for USE_TI_MEDIAOPENPHOTOGALLERY should be good enough (it works for me at least)
FR Passed, Waiting on Jenkins build for Master and 9_3_X port.
cherry-picked to 9_1_X for 9.1.1 target
*Closing ticket*. Fix verified in SDK version
9.2.0.v20200908050955
,9.1.1.v20200903090820
and9.3.0.v20200908051946
. *Test and other information can be found at:* Master: https://github.com/appcelerator/titanium_mobile/pull/11968I'm still seeing this problem in SDK9.2.0.GA when building for device. Is this expected. Is this fix for the next GA release?
[~shamsulazhar], if you're seeing this with SDK 9.2.0 it's probably TIMOB-28151. The fix is merged to the 9_2_X branch and available in 9.2.1.v20200924101706 which you can get with
appc ti sdk install -b 9_2_X