How Do I Know My API Level?

I created an Android app back on Oct 2020.
How do I determine if I need to change anything - based on your requirement that it be
“at least Android 11 (API level 30)”?

The easiest way is to look at the log, in around the 20th line.

Here’s a job on API 30:

Changing root directory to Hello.android11.debug
VoltBuilder run started at 2022-05-28 10:20:20.937620
Plan: Enterprise - 99
Preflight Check
adding android to xmlns
Output: Creating a new cordova project.

Output: No version supplied. Retrieving version from config.xml...
Using cordova-fetch for cordova-android@10.1.1
fetch: Installing cordova-android@10.1.1 to /Hello.android11.debug
Running command: npm install cordova-android@10.1.1 --save-dev
Command finished with error code 0: npm install,cordova-android@10.1.1,--save-dev
Removing "cordova-" prefix from cordova-android
Adding android project...
Loaded API for android project /Hello.android11.debug/node_modules/cordova-android
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: com.nsbasic.HelloWorld
	Name: HelloWorld
	Activity: MainActivity
	Android target: android-30

If you are still on Android-29, you should update your project.

Cordova engine 10.1.2 builds using Android 30.
Engine 9.1.0 (the default) builds using Android 29, which will be rejected by the Google Play Store in the future.

VoltBuilder run started at 2022-05-28 10:13:09.791058
Plan: Enterprise - 99
Preflight Check
adding android to xmlns
Output: Creating a new cordova project.

Output: No version supplied. Retrieving version from config.xml...
Using cordova-fetch for cordova-android@9.1.0
fetch: Installing cordova-android@9.1.0 to 
Running command: npm install cordova-android@9.1.0 --save-dev
Command finished with error code 0: npm install,cordova-android@9.1.0,--save-dev
Removing "cordova-" prefix from cordova-android
Adding android project...
Loaded API for android project /node_modules/cordova-android
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: com.nsbasic.HelloWorld
	Name: HelloWorld
	Activity: MainActivity
	Android target: android-29

Log?
Is this a file I keep among my own, or one that I should be saving?
Is this a log from back when I first created an apk file with VoltBuilder?

At the completion of the build, there is an option to download the log.

I probably never bothered looking at it. Certainly I don’t have it now.
Is that the only way to know?
Is it retrievable, or otherwise available?

You’ll have to do another build. The link appears on the build completion page.

By “new build”, I guess you mean “create a new apk file”.
Here’s part of that log:

Creating Cordova project for the Android platform:
Path: platforms/android
Package: io.github.toraware
Name: toraware
Activity: MainActivity
Android target: android-29

Does that 29 mean Google Store will trash my app some time soon?
Thanks.

Yes, you’ll want to have that last line show up as android-30.

Here is how to do this.

If my app is configured with “android-29”, is it possible that I may not need make any changes all, to get it working for “android-30”?

I ask because I went to the document you point to (just above), and it seems therefrom I have no changes to make to the xml file. Is that possible?

How is your app configured with android-29?

I don’t understand.

To see if I needed to upgrade my app, sitting in Google Store, as you forewarn us based on Android’s/Google’s updated requirements, I ran my zip file thru Volt to see what version I’m using - and it was not Android 30. The log segment is seen above.

The implication is that I do require an update or some change in my XML file, but I saw no changes I needed to make, as per the documentation.

Here’s my config.xml file:
The only line I now added was the “plugin” line, which I probably didn’t need anyhow.

<?xml version='1.0' encoding='utf-8'?>
<widget id="io.github.toraware" version="1.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>toraware</name>
    <description>
        A Handy Torah Search Tool
    </description>
    <author email="toraware@gmail.com" href="https://toraware.github.io">
        Leslie Eichenstein
    </author>
    <content src="index.html" />
    <plugin name="cordova-plugin-whitelist" spec="1" />
    <access origin="*" />
    <icon src="www/pics/twTab.png" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <platform name="android">
        <allow-intent href="market:*" />
    </platform>
    <platform name="ios">
        <allow-intent href="itms:*" />
        <allow-intent href="itms-apps:*" />
    </platform>
</widget>

Where in this file is the 29 or 30 version specified or implied ?

You aren’t specifying that VoltBuilder should use the latest Android engine, so it defaults back to the older version.

See “Set your engine” in this document: Upgrading to Cordova 11 | VoltBuilder

That document states:

Cordova 11 uses an updated engine for Android. Until Cordova 11 is the default, you will need to set it in your config.xml file:
<engine name="android" spec="10.1.2" />

Does this mean that I should now, instead, write

<engine name="android" spec="11" />

Well - that line failed me!

Here’s part of that log:
Output: No version supplied. Retrieving version from config.xml…
Using cordova-fetch for cordova-android@11
fetch: Installing cordova-android@11 to
Running command: npm install cordova-android@11 --save-dev
Command finished with error code 1: npm install,cordova-android@11,–save-dev
Failed to fetch platform cordova-android@11

I can see the cause of your confusion - it’s the numbering.

Cordova 10 supports up to engine 9.1.0, which is Android SDK 29.
Cordova 11 supports up to engine 10.1.2, which is Android SDK 30.

The Cordova number is not the same as the engine number.

My confusion remains.
To decide if my app needs an update, based on the new API 30 requirement, I was here told to look at my log’s “android target”, about 20 lines in.
Mine shows android-29.
Is 29 the SDK number?
Yet my engine number (10.1.2) points to SDK 30?

Would run your job once more? I’ll put a monitor on it and see what is going on.

Thanks! Here I go …

Well, this time around my zip file indeed had its Android Target at 30, unlike before, when it showed 29. Maybe something changed by you on the server, or maybe I did something I don’t remember doing, whatever - thanks so much for hand-holding me along the way. I’m very grateful, and love your works that much more. Your whole system is all so well done.