If ios sdk use "method swizzling" to hook system method?


#1

my app integrates other sdk to play animation, during the playing I will get the finish callback and tell app which one is complete, then app will start to play next one. before integrate zoom sdk the playing works well.
after integrate zoom sdk even never join any meeting, just package it into app. the play complete callback always return 0. so my app can’t play next one correctly. and this issue only existing in ios 9.0 OS.
I guess zoom sdk hook some system status.

demo project

play without zoom sdk
play with zoom sdk

this is no zoom sdk debug snapshot:

this is with zoom sdk debug snapshot:


#2

Hi Guan,

I just download the Demo, and run it in iOS 9.0 simulator. Seems ok in my side.
Are you run in device? I don’t have device with iOS 9.0 right now.
And after check the code, we don’t found that special system event hook.

Regards!


#3

Yes, we run on ios 9.0 device.


#4

jackie.chen
thanks your help, I guess you can understand Chinese. can you help me to confirm what doubt code in your framework load function?


#5

Hi Guan,
I don’t get the point, the framework load in this project only load the code to memory. Not running any code in that moment. Why could effect the the main project code?
And for this issue, could you try change the key in this line “[group setValue:@“WCRDiamondAnimationObject” forKey:@“animationID”]”, just for a test.

Regards!


#6

Hi Guan,
You can check the object address before animation start and the start callback.


I guess the object maybe not same when that phenomenon observed.

Regards!