Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RTMP crash on iOS 9 when send invitation or quick match #760

Closed
shaunho57 opened this issue Oct 15, 2015 · 63 comments
Closed

RTMP crash on iOS 9 when send invitation or quick match #760

shaunho57 opened this issue Oct 15, 2015 · 63 comments
Labels

Comments

@shaunho57
Copy link

Hi, after update to iOS 9, I'm running with this issue.

The app crash immediately when try to CreateQuickGame, or Send RTMP invitation to any friend (able to view recently played friend, crash immediately click on the name).

Result trace the crash using xcode, show there an Jingle Main: EXC_BAD_ACCESS
Attached the screenshot at below.

gpgs_issue

Let me know if you need any further information.

@claywilkinson
Copy link

Thanks. Is this on a 64 or 32 bit device? can you copy the contents of the crash into a message?

@shaunho57
Copy link
Author

its an iPad 4, should be 32-bit device.

not sure what is the contents of crash you mentioned, but here the thread's stack trace and error message

main (1)Queue : com.apple.main-thread (serial)
Thread 5Queue : com.apple.libdispatch-manager (serial)
gputools.smt_poll.0x16578160 (6)
GC Finalizer (9)
BatchDeleteObjects (10)
AsyncReadManager (11)
UnityWorker (13)
Thread 14
UnitySubstanceThread (15)
Thread 16
AURemoteIO::IOThread (17)
Thread 18
com.apple.CoreMotion.MotionThread (19)
UnityPreload (20)
Thread 21
EnlightenWorker (22)
com.apple.NSURLConnectionLoader (23)
com.apple.CFSocket.private (27)
WebThread (28)
JavaScriptCore::Marking (32)
AVAudioSession Notify Thread (33)
com.apple.coremedia.player.async (34)
Thread 35
RoomServiceClie (36)
callback_queue (37)
Thread 38
Thread 39
main_dispatch (40)
Thread 41
Thread 42
Thread 43
tbmp (44)
snap_metadata (45)
Thread 46
Thread 47
snapshot_helper (48)
snap_disk (49)
RoomServiceStat (50)
DcmStateMachine (51)
Jingle Main (31)
#0 0x00bb921e in AES_encrypt ()
#1 0x00b9d9cc in CRYPTO_cbc128_encrypt ()
#2 0x00b70088 in AES_cbc_encrypt ()
#3 0x00b97fee in aes_cbc_cipher ()
#4 0x00be4b44 in tls1_enc ()
#5 0x00bda534 in do_ssl3_write ()
#6 0x00bda390 in do_ssl3_write ()
#7 0x00bda22a in ssl3_write_bytes ()
#8 0x00bf3c46 in talk_base::OpenSSLAdapter::Send(void const_, unsigned long) ()
#9 0x00c0c242 in gtalk::XmppAsyncSocket::OnWriteEvent(talk_base::AsyncSocket_) ()
#10 0x00bf4262 in sigslot::signal1<talk_base::AsyncSocket*, sigslot::single_threaded>::operator()(talk_base::AsyncSocket_) ()
#11 0x00bf3bd4 in talk_base::OpenSSLAdapter::ContinueSSL() ()
#12 0x00bf3dae in talk_base::OpenSSLAdapter::OnReadEvent(talk_base::AsyncSocket_) ()
#13 0x00bf4262 in sigslot::signal1<talk_base::AsyncSocket*, sigslot::single_threaded>::operator()(talk_base::AsyncSocket_) ()
#14 0x00bf5b16 in talk_base::SocketDispatcher::OnEvent(unsigned int, int) ()
#15 0x00bf55a6 in talk_base::PhysicalSocketServer::Wait(int, bool) ()
#16 0x00bf1d0a in talk_base::MessageQueue::Get(talk_base::Message_, int, bool) ()
#17 0x00bf071e in talk_base::Thread::ProcessMessages(int) ()
#18 0x00bf06a4 in talk_base::Thread::PreRun(void*) ()
#19 0x3482bc92 in _pthread_body ()
#20 0x3482bc06 in _pthread_start ()
#21 0x34829a24 in thread_start ()


-> 0xbb921e <+42>: ldm.w r0, {r5, r11} Jingle Main (31):EXC_BAD_ACCESS (code=EXC_ARM_DA_ALIGN, address=0x10c4700b)

@claywilkinson
Copy link

thanks!

@simsis3d
Copy link

@claywilkinson Exact same problem here. @shaunho57 is your device IOS 9.0 or 9.0.2? Because, in my case, I have same problem with my Ipad 2 IOS 9.0.2. When I run my app on IOS 9.0 simulator, it works fine. Moreover, when my device was IOS 9.0, it was also woking fine. When I updated it to IOS 9.0.2, I get exact same problem.

@shaunho57
Copy link
Author

hi @simsis3d , i tested with both iOS 9.0.1 and 9.0.2 (was 9.0.1, crash happened so i update to 9.0.2), both crash. Never tested on iOS 9.0.

Additionally my colleague once tested with his iOS 8.4, according to him, it crash as well.

BTW, I also tested on iOS 9.0 simulator, and crash din't happened.

@simsis3d
Copy link

@ZenithCode do you have any idea? Are you still testing your game on IOS devices? I remember that your game was also RTMP?

@ZenithCode
Copy link

@simsis3d yes its RTMP but I gave up on invitations. Other than that, 0.9.25 works fine for me.

@dabeku
Copy link

dabeku commented Oct 19, 2015

Same problem here: iOS 9.0.2 crashes when creating room in RTMP or when accepting invitation. Using 0.9.26 unity plugin.

@dabeku
Copy link

dabeku commented Oct 20, 2015

Btw: You can easily reproduce this issue by running the SmokeTest of /samples and deploy it to an iOS device. Press Authenticate -> Multiplayer -> RTMP -> Create Game -> Select: Auto Pick (or enter any name) -> Press play -> App crashes with error shown in screenshot above in AES_encrypt.

@dabeku
Copy link

dabeku commented Oct 20, 2015

@ZenithCode I just tested this issue on several iOS devices and as far as I can tell this issue is also existing in previous versions: 0.9.25, 0.9.21 and maybe older versions. My guess is that since the switch to cocoapods there seems to be an iOS issue.

@claywilkinson
Copy link

@dabeku - can you share which version of xcode you are using and what device(s) you are testing on, and their versions?

@dabeku
Copy link

dabeku commented Oct 20, 2015

@claywilkinson of course:
xcode = 7.0 (7A220)
devices = iPhone 4S iOS 9.0.2 (13A452), iPad Air iOS 9.0.2 (13A452)
unity = 5.2.1f1 Personal

@claywilkinson
Copy link

Thanks! I'll give an update as soon as I know more.

@dabeku
Copy link

dabeku commented Oct 20, 2015

@claywilkinson Thanks. I'm looking forward to it. Please let me know if you need any other information.

@simsis3d
Copy link

@dabeku @shaunho57 can you please confirm that invitations to IOS device(IOS 9.0.2) from other devices are not coming beside app crash when send invitation from IOS 9.0.2 device.

@dabeku
Copy link

dabeku commented Oct 21, 2015

@simsis3d Testsetup: Android -> Create Room -> Invite iOS 9.0.2 device.
I can confirm that the "OnInvitationReceived()" is NOT called on iOS device but if you open "AcceptFromInbox()" on the iOS device, the invitation of the Android device is visible. If you accept the invitation on the iOS device the app crashes (see above).

@simsis3d
Copy link

@dabeku @claywilkinson Today I tested it again. There isn't any problem on invitations recieved(Both "OnInvitationRecieved" and "AcceptFromInbox" works). But, as soon as I accept an invitation, it crash. Sending invitation also crash(Stated above comments).

Here is the full logs and secreenshot.

Image of Error

Building GPG services, implicitly attempts silent auth
GooglePlayGames.PlayGamesPlatform:Authenticate(Action`1, Boolean)
UIManager:Awake()

(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 65)

2015-10-22 18:20:47.423 Woodball[4931:859424] INFO: Auth operation started: SIGN IN
Scene MainMenu is loaded

(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 65)


Unloading 16 unused Assets to reduce memory usage. Loaded Objects now: 5456.
Total: 35.472916 ms (FindLiveObjects: 4.311333 ms CreateObjectMapping: 1.122625 ms MarkObjects: 26.799957 ms  DeleteObjects: 1.647458 ms)

2015-10-22 18:20:47.694 Woodball[4931:859148] VERBOSE: Running silent sign in request on main thread.
2015-10-22 18:20:47.724 Woodball[4931:859148] VERBOSE: Finished running silent sign in request on main thread.
2015-10-22 18:20:48.513 Woodball[4931:859148] VERBOSE: Signed in user; extracting credential.
2015-10-22 18:20:48.896 Woodball[4931:859398] <Google:HTML> You are currently using version 7.4.1 of the SDK. Please consider updating your SDK to the most recent SDK version to get the latest features and bug fixes. The latest SDK can be downloaded from http://goo.gl/iGzfsP. A full list of release notes is available at https://developers.google.com/admob/ios/rel-notes.
2015-10-22 18:20:50.944 Woodball[4931:859148] cache manager changed bundle status: <VungleAdBundle: 0x17f05cd0>
2015-10-22 18:21:49.257 Woodball[4931:859148] -canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
2015-10-22 18:22:49.721 Woodball[4931:859148] -canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
2015-10-22 18:22:49.886 Woodball[4931:859653] <Google:HTML> You are currently using version 7.4.1 of the SDK. Please consider updating your SDK to the most recent SDK version to get the latest features and bug fixes. The latest SDK can be downloaded from http://goo.gl/iGzfsP. A full list of release notes is available at https://developers.google.com/admob/ios/rel-notes.
2015-10-22 18:23:23.699 Woodball[4931:859148] Unbalanced calls to begin/end appearance transitions for <GPGLauncherWindowRootViewController: 0x1c3a2890>.
2015-10-22 18:23:24.105 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.105 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.106 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:24.106 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.106 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.106 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:24.107 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.107 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.107 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:24.107 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.108 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.108 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:24.108 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.108 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.109 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:24.109 Woodball[4931:859148] ERROR: Attempting to get level number of an invalid PlayerLevel
2015-10-22 18:23:24.109 Woodball[4931:859148] ERROR: Attempting to get minimum xp of an invalid PlayerLevel
2015-10-22 18:23:24.110 Woodball[4931:859148] ERROR: Attempting to get maximum xp of an invalid PlayerLevel
2015-10-22 18:23:50.231 Woodball[4931:859148] -canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
2015-10-22 18:24:14.053 Woodball[4931:859423] INFO: Connect with retry.getRetryAuthToken(): 1
2015-10-22 18:24:14.054 Woodball[4931:859423] INFO: Token expired.  Refreshing.
2015-10-22 18:24:14.054 Woodball[4931:859423] Trying to refresh token; old token is: ya29.FALa6vkqYvsLqXd1umvyJYGIptvxNstEWU60uLLx7K3jCMxmIytt7epDuwAlcdEWSWJJCw
2015-10-22 18:24:14.054 Woodball[4931:859423] VERBOSE: Kicking off refresh request to main thread now.
2015-10-22 18:24:14.056 Woodball[4931:859423] VERBOSE: Waiting for refresh request to return now.
2015-10-22 18:24:14.335 Woodball[4931:859148] Auth updated!  ... maybe.  New token is: ya29.FALmiLaHEliMViWF69OkXKWL8euPkIYkmYhGNdelZY2tf-2TNIMzFCHKVAceo1KCEcRLRw
2015-10-22 18:24:14.336 Woodball[4931:859423] VERBOSE: Refresh request returned.
2015-10-22 18:24:14.337 Woodball[4931:859423] Token refresh success!
2015-10-22 18:24:14.337 Woodball[4931:859423] VERBOSE: Different token!  Refresh successful!
2015-10-22 18:24:14.337 Woodball[4931:859423] INFO: Trying to connect with returned auth token.
(lldb) ```

@simsis3d
Copy link

@claywilkinson Do you have any idea about problem?

@claywilkinson
Copy link

The library team is looking at it, but no update yet. I have heard that it is not reproducible on the latest update (9.1)? I'll let everyone know when I know more.

@simsis3d
Copy link

I intentionally didn't upgrade my device to reproduce this problem again. @dabeku @shaunho57 did you upgrade to IOS 9.1 and tested it again?

@shaunho57
Copy link
Author

@simsis3d I have my colleague to test with ios 9.1, according to him, it still crash.

@dabeku
Copy link

dabeku commented Oct 31, 2015

@simsis3d I'm right now in process of updating to 9.1 and xcode 7.1. As soon as the update finishes I'll try it and let you know (xcode update takes forever...)

@dabeku
Copy link

dabeku commented Oct 31, 2015

@claywilkinson @simsis3d I just tested it on iOS 9.1 and xcode 7.1 and the problem still exists. So no change in current iOS version.

@claywilkinson
Copy link

Thanks for the update - as soon as I know something I'll let you know.

@GokhanOzcan
Copy link

@claywilkinson
So do we have to wait to build forIOS untill this problem is solved?

@GokhanOzcan
Copy link

@claywilkinson
We wait almost 1 month to build for IOS. Is there any informations? Is it because of plugin or IOS? What should we do? My boss will kill me if I dont find any excuse:)

@claywilkinson
Copy link

@simgesimulation - I appreciate the sense of urgency and frustration that you are communicating. As far as I know, the problem is in the Play Games Services library. I don't know exactly when it will be released. As soon as I know more I will share an update.

@geidsvig
Copy link

I'm having this same issue.
ios 9.1 (13B143)
xcode 7.1 (7B91b)

@simsis3d
Copy link

@claywilkinson it has been 39 days we postponed our IOS build because of this problem. Still no news? Is this problem appears only for this plugin(Unity users) or all GPGS RTMP users? Are there any other forum topics we can follow the process. OR at least a link we can show our players "Look! This is an official GPGS problem". Waiting from you. Thanks.

@GokhanOzcan
Copy link

Previous plugin versions also have same issue? Someone tried 0.9.25 or 0.9.26? @dabeku @shaunho57

@claywilkinson
Copy link

There are definitely issues with Google Play Game Services on iOS related to multiplayer and social APIs. I've been told to communicate that these issues are not going to be addressed in the immediate future. As a result, you should treat these APIs as "beta" quality. Please continue to share your experiences using this library on iOS, as your feedback is important to making the library better in the future.

As there are updates to the iOS SDK, I will share them.

@dabeku
Copy link

dabeku commented Dec 1, 2015

@claywilkinson Thanks for the update. Too bad. This library seemed very promising...

@GokhanOzcan
Copy link

So guys, I am shocked. I finished everything, I was just waiting good news:( So, what is next? What are other alternatives? what are your plans?

@simsis3d
Copy link

simsis3d commented Dec 1, 2015

@claywilkinson Is this officially means "Find an alternative to GPGS and stop using it" after reaching 3.5M downloads and 25.000 daily active users? It is so weird... Then why Google says IOS is supported?What I see from this situation is it is clealy NOT! Or at least why they dont write a note that says there are serious problems on IOS side, please be aware of that? I really dont know what to do now:/

@ZenithCode As far as I know, your game is also RTMP game and it is live on App Store right now. What is your situation right now? RTMP works for you? Or you completely remove RTMP for IOS users?

@ZenithCode
Copy link

Yes, but we decided to switch to Photon around 2 months ago as these bugs were taking forever to fix. It was a painful (costly) process and really disappointed at this situation but glad we took that decision.

@GokhanOzcan
Copy link

@ZenithCode now are u using Photon? What is the name of your game? I want to look at it

@ZenithCode
Copy link

The live version is still using RTMP.

https://itunes.apple.com/us/app/dirt-trackin/id940202798?mt=8
https://play.google.com/store/apps/details?id=com.bennettracingsimulations.dirttrackin&hl=en

The Photon version should go live in a few weeks.

@simsis3d
Copy link

simsis3d commented Dec 1, 2015

@ZenithCode what about live version of IOS now? RTMP doenst work right now? Did you test it or take any information from your players/community?

@ZenithCode
Copy link

It works on most devices - we have some issues with iPhones 5c/5s but the rest is fine.
The invitations don't work at all.

@claywilkinson
Copy link

(Please read this as a Unity developer, not a Google developer) Have any of you tried out the multiplayer services in Unity either on Android or iOS?

@GokhanOzcan
Copy link

@claywilkinson which multiplayer services? do you mean new multiplayer services(currently in beta) of unity?

@claywilkinson
Copy link

Yes, those ones. I have not had a chance to try them out. Is it worth looking at?

@GokhanOzcan
Copy link

me neither

@dabeku
Copy link

dabeku commented Dec 5, 2015

@claywilkinson Is there a plan on when this play-games-plugin for unity will be released as non-beta? You stated that this issue won't be fixed "immediately". Does that mean it will be probably fixed next month, next year, or maybe never?
I'm asking because the release date of the game we're currently developing is somewhere in the middle of next year.

@claywilkinson
Copy link

@dabeku - Unfortunately, at this time, I don't have any more information than that. When there are updates, I'll make sure they are sent out.

@GokhanOzcan
Copy link

@ZenithCode My friend, I have some questions about photon engine. Is it possible with photon engine to achive same system here we do with gpg unity plugin? You know authonticate with google account. Then either play quick match or with your friends. Send and receive invitations etc. If yes which account they use to authenticate? Facebook account?

@GokhanOzcan
Copy link

@claywilkinson Are there any new information?

@shaunho57
Copy link
Author

well, almost 3 months, still waiting for news..

@claywilkinson
Copy link

I'll update the thread when I know more... should be soon.

@dabeku
Copy link

dabeku commented Jan 22, 2016

I just tested it again and found that the error when accepting a RTMP game changed to the error below (before it was an AES_encrypt error). Can someone also verify this? I guess maybe because it's not directly a unity plugin issue but more an issue of the gpg libraries used that are imported using cocoa?

screen shot 2016-01-22 at 16 32 05

@GokhanOzcan
Copy link

Hi @dabeku
@claywilkinson already said that it is about gpg libraries, wasnt it?

@dabeku
Copy link

dabeku commented Jan 22, 2016

@simgesimulation Yes, but the error changed. I was just wondering...

@claywilkinson
Copy link

Yes, I am hoping to get an update that will make this better next week. Stay Tuned!

@GokhanOzcan
Copy link

vauv, we start again:)

@claywilkinson
Copy link

OK the updated plugin 0.9.30 fixes this issue. There still are issues for iOS that are outstanding in the C++ SDK. See: https://developers.google.com/games/services/ios/knownIssues

@GokhanOzcan
Copy link

Hey @claywilkinson it is nice to hear that this problem is solved finally. Do you have any idea that is Push Notification problem(#606) solved?

@claywilkinson
Copy link

I don't have an exact timeline, but I bug the developers about it all the time. I'll keep you posted.

@dabeku
Copy link

dabeku commented Feb 10, 2016

@claywilkinson Thanks for never giving up :)

@claywilkinson
Copy link

Thanks @dabeku 👍 I'll let everyone know as I find out more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

9 participants