Search Issue Tracker
Fixed in 2018.2.X
Fixed in 2018.1.X
Votes
0
Found in
5.3.4p5
Issue ID
793420
Regression
No
[iOS] iOS Trampoline extern "C" doesn't work with Objective C
Reproduction Steps:
1. Open "Case793420" project
2. Enter valid Player Settings > Automatic Signing TeamID
3. Enter valid Player Settings > Bundle Identifier
4. Build to iOS platform
5. Open the generated Xcode project in Xcode
6. Build the project in Xcode
7. Notice the compilation errors on two lines in UnityViewControllerBase+iOS.h
User suggested fix:
1. In Xcode, open the file UnityViewControllerBase+iOS.h
2. Replace the two lines with compilation errors with the code below
#ifdef __cplusplus
extern "C" {
#endif
void AddViewControllerRotationHandling(Class class_, IMP willRotateToInterfaceOrientation, IMP didRotateFromInterfaceOrientation, IMP viewWillTransitionToSize);
void AddViewControllerDefaultRotationHandling(Class class_);
#ifdef __cplusplus
}
#endif
Expected behaviour: Project builds correctly without any errors.
Reproduced on versions: Unity 2017.1.3f1, 2017.2.1p2, 2017.3.0p3, 2018.1.0b3
Reproduced on devices: iPhone 7 Plus iOS 10.3.2
Reproduced on Xcode 9.0
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Shader warning in 'Hidden/Core/DebugOccluder' thrown after building High Definition 3D Sample Template
- Audio Mixer “+” buttons overlap with UI when the Audio Mixer window layout is set to Horizontal
- "Clear" button in the "Set project display name" closes all the pop-up instead of clearing just a name from the field
- Video Player renders no video on specific devices when using Vulkan
- The Editor slows itself down by showing tons of warnings when the majority of TransformAccessArrays content are NullRefs
Add comment