Troubleshooting Android packaging issues

Here are troubleshooting tips for issues you may encounter when packaging your Androidâ„¢ app.

Unexpected warning regarding a timestamp

If you are packaging with Java version 1.7.51 or later, you may receive this message:

Warning: No -tsa or -tsacert is provided and this jar is not timestamped. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (YYYY-MM-DD) or after any future revocation date.

This warning appears because the AAB or APK package is signed without a timestamp. A timestamp is not required for Android. The debug certificate validity period is very long; its expiration should not be a problem.

Submission fails due to permissions assigned

Starting with Android API level 23, Google considers the following permissions dangerous:
  • READ_CALENDAR
  • WRITE_CALENDAR
  • CAMERA
  • READ_CONTACTS
  • WRITE_CONTACTS
  • GET_ACCOUNTS
  • ACCESS_FINE_LOCATION
  • ACCESS_COARSE_LOCATION
  • RECORD_AUDIO
  • READ_PHONE_STATE
  • CALL_PHONE
  • READ_CALL_LOG
  • WRITE_CALL_LOG
  • ADD_VOICEMAIL
  • USE_SIP
  • PROCESS_OUTGOING_CALLS
  • BODY_SENSORS
  • SEND_SMS
  • RECEIVE_SMS
  • READ_SMS
  • RECEIVE_WAP_PUSH
  • RECEIVE_MMS
  • READ_EXTERNAL_STORAGE
  • WRITE_EXTERNAL_STORAGE

If you experience problems with your GMA submission, verify you do not have any of these permissions selected for your AAB package unless the application includes front calls or APIs requiring the permission. See Set permissions for an Android Package.

Android app update fails due to non-matching key

If your update fails, check that the app signing key is the same for both original and updated versions. The app signing key is a security mechanism to ensure that the update is genuine, and must not change during the lifetime of your app.

For further information, see Building Android apps with Genero in the Genero Business Development Language User Guide and Sign your app in the Android documentation.