Not being to use Google Play console anymore

Google have stopped people uploading .apk files (as created here) on Google Play Console, the Developer function.

  1. They insist that security Policy can only be placed on an external website URL, instead of being included in the application process. So you if you don't have a web site, as I do, you cannot upload a app.
  2. They have introduced a new format called the "app bundle" which has a new file extension called .aab.
    This has to be created on one of their own apps called Android Studio which is huge(Gb's) and has to be updated regualarly and is very hard to use. You can no longer upload .apk files as produced here on MIT App Inventor.
    They also want access to your resources, and code, so they can change them to fit new SDK's and display formats at will, without your consultation.

So I have had to stop uploading my apps to Google Play, as

  1. I don't have the source code (as it is created in MIT App Inventor).
  2. Android Studio was complicated enough, without being compulsory to create a new file format from your existing .apk files.
  3. I am upset with the sheer amount of updates that Google keeps on producing which make it impossible to comply with, and there is no consultation (or forum or support).
  4. It seems that the lone app creator has been forgotten about, and only large companies need apply.
  5. There is no downloadable app/ program with which to do this without Android Studio!
    So I will be uploading all my .apk's to the Gallery on MIT App Inventor instead.
    Hopefully they will index the search engine soon, so that they can find my app.
    Otherwise it is on this fixed web address

WIFI_Control_3 on Gallery

1 Like

As far as I know, there is nothing stopping you uploading an app created with AI2 to the Google Play Store.....

You can only upload aia projects to the gallery (with no extensions)

It seems you are not up to date with AI2. For new apps and updates that have not been published before Aug 2021, only AABs can be uploaded to the Google Play Developer Console. From this AAB, Google then creates and provides the device-specific APKs.

Apps released before August 2021 can still use APKs for updates.

So to make a long story short, AI2 can create APKs and AABs and you can then upload the required format to the Play Developer Console.

3 Likes

I am using AI2, But I had not noticed the 2nd option under 'build' to create a app bundle.
I can now go ahead and try and upload this app.
It still does not solve the problem of only being able to load app bundle, if you have website with a security policy on it.

Tried to change to app bundle upload and it comes up with an error!
"You uploaded an APK or Android App Bundle that is signed with a key that is also used to sign APKs that are delivered to users. Because you are enrolled in Play app signing, you should sign your APK or Android App Bundle with a new key before you upload it."
these are the options if you don't want google to manage your key (as it does now).
google app signing policy

None of which enables me to use the MIT generated app.
The only option I have is to sign it with a previously used app (dementiaplayer).

This is a drop-down list so I guess you can choose another app. I think you need to select the app that is to be updated with this package.

This is a NEW app, so there is no updgrade path.
I cannot find a key that Google Play can give me that they used before (Normally you can download an existing key to sign any other packages).

I have a conflict here I have managed to download the keyfile that Google says it signs all my apps. Its file name is "deployment_cert.der". You click on the app in Google Play Console and pick API integrity/ App Signing and it displays it.
If you want to use a new key there is a very complex set of programming you have to download to encrypt any other key, and retransmit it back to google.
MIT AI2 uses the filename "android.keystore" for importing and exporting the private key used to create the app bundle.
Neither can explain how to use one or the other key!

Given the file name is deployment_cert.der, I am not confident that this file contains the private key that App Inventor would need to sign your project (certificates generally only contain public key information). The android.keystore produced by App Inventor is a Java keystore, so you would likely have better luck uploading that keystore to Google using the second option in your screenshot.

This is the documentation on how to set up a key in Google Play.
I can see nothing here that I can do!
I do not own the process to produce the app, so cannot install changes to the way it produces the key app bundle.

Overview of the Google Play Core libraries

This page describes the Google Play Core libraries and how to add them to your project.

Important: The Google Play Core Java and Kotlin library have been split into multiple separate libraries, one for each feature. Update to the new libraries to benefit from new product additions. For more information, see the [migration guide]

The Google Play Core libraries are your app’s runtime interface with the Google Play Store. Some of the things you can do include the following:

  • [Download additional language resources]
  • [Manage delivery of feature modules]
  • [Manage delivery of asset packs]
  • [Trigger in-app updates]
  • [Request in-app reviews]

The Play Core libraries are available in [Java]. For more information about the latest releases, see the [Release notes]

Migration from the Play Core Java and Kotlin Library

The Play Core Java and Kotlin Library has been partitioned into multiple per-feature Android libraries. This reduces the size Play Core libraries add to your app and allows for faster release cycles of the individual features.

The behavior of each feature has stayed consistent in this migration, the only notable change is that the new versions have adopted [Google Play Services' Task API]

Use the list below to migrate to the new libraries and benefit from new features and bug fixes. If you use multiple Play features, you can simply import multiple libraries in your build.gradle file at once.

Common migration steps

  1. Update any existing import statements of Task objects from import com.google.android.play.core.tasks.*; to import com.google.android.gms.tasks.*;. All class names are unchanged.
  2. Remove any imports of the old Play Core libraries in your build.gradle file.

Integrate the Play Asset Delivery Library

[Groovy]

// In your app’s build.gradle file:
...
dependencies {
// This dependency is downloaded from the [Google’s Maven repository]
// So, make sure you also include that repository in your project's build.gradle file.
implementation 'com.google.android.play:asset-delivery:2.0.2'

// For Kotlin users also add the Kotlin extensions library for Play Asset Delivery:
implementation 'com.google.android.play:asset-delivery-ktx:2.0.1'
...
}

Integrate the Play Feature Delivery Library

[Groovy]

// In your app’s build.gradle file:
...
dependencies {
This dependency is downloaded from the [Google’s Maven repository] So, make sure you also include that repository in your project's build.gradle file.
implementation 'com.google.android.play:feature-delivery:2.0.1'

// For Kotlin users, also add the Kotlin extensions library for Play Feature Delivery:
implementation 'com.google.android.play:feature-delivery-ktx:2.0.1'
...
}

Integrate the Play In-App Review Library

[Groovy]

// In your app’s build.gradle file:
...
dependencies {
// This dependency is downloaded from the Google’s Maven repository
// Make sure you also include that repository in your project's build.gradle file.
implementation 'com.google.android.play:review:2.0.1'

// For Kotlin users, also add the Kotlin extensions library for Play In-App Review:
implementation 'com.google.android.play:review-ktx:2.0.1'
...
}

Integrate the Play In-App Update Library

[Groovy

// In your app’s build.gradle file:
...
dependencies {
// This dependency is downloaded from the [Google’s Maven repository]
// Make sure you also include that repository in your project's build.gradle file.
implementation 'com.google.android.play:app-update:2.0.1'

// For Kotlin users, also add the Kotlin extensions library for Play In-App Update:
implementation 'com.google.android.play:app-update-ktx:2.0.1'
...

Show the status of your app in the Google Play Developer console.

  • Is the app still in draft mode? Post screenshot(s).
  • Go to "App Bundle Explorer" and post a screenshot of that as well.

It seems to me that you see things more complicated than they really are. :wink:

Regarding "new keystore" see also here:

I have done all you said and the app bundle did load OK, but it still creates an error.
1 MESSAGE FOR VERSION CODE 1
Warning
There is no deobfuscation file associated with this App Bundle. If you use obfuscated code (R8/proguard), uploading a deobfuscation file will make crashes and ANRs easier to analyse and debug. Using R8/proguard can help reduce app size.


Screen shot of status as requested.

It's just a warning, so ignore it.

Looks good ...