Highlighted

How to catch VerifyError: Illegal override of ...

Advocate ,
Jan 30, 2015

Copy link to clipboard

Copied

Hi everyone,

on Android, I deploy a small apk application that will download the latest version of my game from my servers whenever an update is available. The communication between Android and the game.swf happens through a few base classes that might be overriden by the Android application. For example: The game.swf will normally be initialized by a FacebookWeb class, while on Android it is initialized with a FacebookAndroid class, that makes use of the Facebook SDK for Android. Both these classes share the same base class. That means the definition of these base classes is known to both the Android app and the game.swf.

Now once in a while I will update a base class. For example I might add a function and override it in the FacebookWeb. If I do not update my Android apk in time, or the players use outdated versions of the Android app, the loading of the game.swf will fail with: "[Fault] exception, information=VerifyError: Error #1053: Illegal override of isPermissionGranted in FacebookWeb." because the Android app does not have a version of the base class with the newly added function, yet.

Is there a way to catch this VerifyError somehow to prevent that the whole thing just crashes? I debugged step by step, but it seems that the error is thrown inside the Loader class asynchronously.

Thanks

TOPICS
Development

Views

197

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

How to catch VerifyError: Illegal override of ...

Advocate ,
Jan 30, 2015

Copy link to clipboard

Copied

Hi everyone,

on Android, I deploy a small apk application that will download the latest version of my game from my servers whenever an update is available. The communication between Android and the game.swf happens through a few base classes that might be overriden by the Android application. For example: The game.swf will normally be initialized by a FacebookWeb class, while on Android it is initialized with a FacebookAndroid class, that makes use of the Facebook SDK for Android. Both these classes share the same base class. That means the definition of these base classes is known to both the Android app and the game.swf.

Now once in a while I will update a base class. For example I might add a function and override it in the FacebookWeb. If I do not update my Android apk in time, or the players use outdated versions of the Android app, the loading of the game.swf will fail with: "[Fault] exception, information=VerifyError: Error #1053: Illegal override of isPermissionGranted in FacebookWeb." because the Android app does not have a version of the base class with the newly added function, yet.

Is there a way to catch this VerifyError somehow to prevent that the whole thing just crashes? I debugged step by step, but it seems that the error is thrown inside the Loader class asynchronously.

Thanks

TOPICS
Development

Views

198

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Jan 30, 2015 0

Have something to add?

Join the conversation