Skip to content

feature: debug symbols for iOS and Android #90

@madebydavid

Description

@madebydavid

Background

In order to better diagnose issues with game crashes, it is possible to include debug symbols in the assets which are built and provide them to Google Play / Apple.

With these symbols provided, the crash reports in Google Play and in App Store connect will have more information allowing the developers to track down issues.

  • To enable this for Android, we will need to build versions of the export templates with debug symbols enabled (unstripped) and then included in the AAB file.
  • For iOS, it seems more straightforward (may need some testing) -uploadSymbols in ExportOptions.plist will include dSYM - maybe already enabled.

Goal

Make it so that users can enable/disable debug symbols in both iOS and Android

Proposal

  • Add an extra value to the ProjectDetails object which can be edited with shipthis game details
  • Users would enable this for both platforms at the same time with shipthis game details --debugSymbols true
  • The build server will need to pick this up and:
    • For Android use the custom export templates with debug symbols enabled
    • For iOS set the uploadSymbols value in ExportOptions.plist

Prerequisites

  • Research - confirm how to do this for iOS - documentation and initial research is not conclusive
  • Research - build of Android export templates - do we need another repo to handle this as there are many versions?
  • Implement - backend changes to include extra flag on the ProjectDetails type
  • Implement - build server changes to apply the needed changes based on new flag
  • Decide - do we also allow passing this to shipthis game ship --debugSymbols true to apply to one build?

TODO in this repo

  • Update the type ProjectDetails
  • Update the shipthis game details command
  • Documentation updates (command reference & FAQ)
  • Testing

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions