Trace: » android14.html

[hemmerling] Google Android 14/14 - App Development III

My first Google Play App, with Android Studio

1 Install Android Studio & Setup Environment

1.1 Install Android Studio

1.2 Setup Environment

2. Prepare Debugging

2.1 Activivate the Developer Mode of my Motorola G54 ( Android 15 )

2.2 Activivate USB Debugging for my Motorola G54 ( Android 15 )

  • “System” / “Entwickleroptionen” / “USB-Debugging” = YES.

2.3 Install ADB Driver for Windows

  • Universal ADB Drivers - “One size fits all Windows Drivers for Android Debug Bridge”.
  • At “Windows Control Panel” / “Programs and Features”, the application name is “Universal Adb Driver”.

3 My first Kotlin App "HemmerlingTheApp"

3.1 Tutorials

  • SDK.
    • AndroidStudio BurgerMenu “Tools” / “SDK Manager”.
      • Android SDK Location “C:\Users\Administrator\AppData\Local\Android\Sdk”.
      • As of 2025-04, please install “Android 15.0 (“VanillaIceCream”), API Level “35”.
    • Google Developers "Meet Google Play's target API level requirement" - “Starting August 31 2024: New apps and app updates must target Android 14 (API level 34) or higher to be submitted to Google Play”.
      • There are 2 settings.
        • Target SDK.
          • For publication on Google Play, you need to install and use SDK 14 or SDK 15, for bundle generation with Android Studio.
          • This limit might not be true for other third-party appstores.
        • Minimum SDK.
          • For SDK 14, minimum SDK is Android 4.1 ( API level 14 ).
          • For SDK 15, minimum SDK is Android 7.0 ( API level 24 ).
      • Android BurgerMenu “File” / “Project Structure” / “Properties”.
        • “Compile Sdk Version” = “35(API 35(“VanillaIceCream”; Android 15.0))”.
      • Android BurgerMenu “File” / “Project Structure” / “Default Config”.
        • “Target SDK Version” = “35(API 35(“VanillaIceCream”; Android 15.0))”.
        • “Min SDK Version” = “24”.
    • Android BurgerMenu “File” / “Project Structure” / “Default Config”.
      • “Version Code” = “1”.
      • “Version Name” = “1.0”.
      • “Target SDK Version” = “35(API 35(“VanillaIceCream”; Android 15.0))”.
      • “Min SDK Version” = “24”.

3.1 My private Google for Developers Profile

3.3 Generate Keystore on your Development Computer

  • AndroidStudio BurgerMenu “Build” / “Generate Signed App Bundle or APK”.
    • Key store path “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Android Studio\hemmerling.keystore”.
      • Password “android”.
    • Key.
      • Alias ( alias name ): “androidkey”, ”key0
      • “Password: “android”.
      • “Validity (years)”:
        • “25” ( -validity 9125, default ).
        • 30” ( -validity 10950 ).
      • “First and Last Name” ( CN ): “Rolf Hemmerling”.
      • “Organizational Unit” ( OU, unit or department ): “http://hemmerling.com”.
      • “Organizsation” ( O ): “Dipl.-Ing.(FH) Hemmerling”.
      • “City or Loyalty” ( L ): “Bielefeld”.
      • “State or Province” ( ST ): “NRW”.
      • “Country Code (XX)” ( C ) : “DE”.
      • ( -keyalg RSA -keysize 2048 ).
    • Destionation Folder:
      • “E:\users\Public\archive\github\kotlin-htapp\HemmerlingTheApp\app”.
      • build” / “release”.
    • “keytool -list -v -keystore hemmerling_test.keystore -storepass android:
      • “Owner: C=DE, ST=state_or_province, L=city_or_locality, O=organisation, OU=organisational_unit, CN=first_and_last_name”
      • “Issuer: C=DE, ST=state_or_province, L=city_or_locality, O=organisation, OU=organisational_unit, CN=first_and_last_name”
  • Output:
    • In folder: “E:\users\Public\archive\github\kotlin-htapp\HemmerlingTheApp\app\release”.
    • File: “E:\users\Public\archive\github\kotlin-htapp\HemmerlingTheApp\app\release\app-release.aab”

4 Publish the App on Google Play

5 Google Playstore

5.1 Internal Testing

  • Google Play Console “Test and release” / “Testing” / “Internal testing”.

5.2 Production

  • Google Play Console “Production” / “Create production release”.
    • You need to assign a different version for the bundles “internal testing” and “production”. If you fail, error message “Version code 1 has already been used. Try another version code”.

5.3 Setup Google Play Store Listing

5.3.1 Create an "App icon" for Google Play Store Listing
  • Android Developers "Create app icons" - “About Image Asset Studio. Android Studio includes a tool called Image Asset Studio that helps you generate your own app icons from material icons, custom images, and text strings. It generates a set of icons at the appropriate resolution for each pixel density that your app supports”.
    • Android studio:
      • Select “Full Bleed Layer” icon.
      • In “Android” view, select the “round” version of the icon. Display “app” / “res” / “ic_launcher_round” / “ic_launcher_round.webp (xxhdpi)”.
      • Take a screenshot and create a 512×512 PNG image.
  • If you fail, rejection: “App does not match the store listing. When it’s installed, your app's icon or name is different to the one shown in its store listing” :-(.
  • You might take a screenshot of your Android desktop, which also shows the App icon. But the resolution of your App icon would be too low.
5.3.2 Create an "App icon" Screenshot with MIT App Inventor
  • See on this page.
5.3.3 Setup Google Play Store Listing & Generation of requested Screenshots
  • Images ( height x width ):
    • App icon: 512×512 - Must be a true screenshot of the icon, which is displayed on the Android desktop.
    • Feature graphics: 500×1024.
    • Phone screenshots: 569x320 ( 16:9, 9:16 ).
    • 7-inch tablet screenshots: 320x569 ( 16:9, 9:16 ).
    • 10-inch tablet screenshots: 1080x1966 ( 16:9, 9:16 ).
    • Chromebook: ?? 1920×3413 ?? ( 16:9, 9:16, optional ) - I failed find the proper image size for upload :-(. “16:9 or 9:16 aspect ratio, with each side between 1,080 px and 7,680 px”. Error message “Image must have an aspect ratio of 16:9 and a width between 1920 px and 7680 px”.
  • Target audience.
    • “You're declaring that your target audience includes children under the age of 13. If your app serves ads to children that don't meet the Families policy requirements, or you inappropriately collect personally-identifiable information from children, your app may be removed from Google Play”.
    • Best choice “13-15”, “16-17”.
  • Google Play Console Support "Requirements for distributing apps in specific countries/regions" - “Requirements for distributing apps in the EU.... For example, an app should be accessible EU-wide subject to other applicable laws unless the main feature of the service is the provision of access to and use of copyright-protected works or other protected subject matter”
5.3.4 How to update screenshots for Google Play Store

5.4 Google Play - Actions recommended

  • 2 actions recommended
    • Edge-to-edge may not display for all users
      • From Android 15, all apps targeting SDK 35 will display edge-to-edge by default. Apps targeting SDK 35 should handle insets to make sure that their app displays correctly on Android 15 and later. We recommend investigating this issue and allowing time to test edge-to-edge on your app and make the required updates to your code. Alternatively, call enableEdgeToEdge() for Kotlin or EdgeToEdge.enable() for Java for backward compatibility.
    • Your app uses deprecated APIs or parameters for edge-to-edge

5.5 Fixing Google Play Issues

5.6 Google Play - Rejection

  • Functionality, Content, and User Experience policy: Violation of Functionality, Content, and User Experience policy
    • “In accordance with the Functionality, Content, and User Experience policy, your app has not met one or more of the following requirements: Your app is static and does not contain app-specific functionalities” :-(.

My first Google Play App, with MIT App Inventor

1 MIT App Inventor

2 My MIT App Inventor App "Conference Selfie"

3 Publish the App on Google Play

3.1 Create a new Keystore with Keytool / Android Studio Keytool

3.2 Let MIT App Inventor create for you a new Keystore for use with Google Play

  • Delete an existing keystore, built your app & by that, generate a new keystore.
    • MIT App Inventor”.
      • “Projects / Delete Keystore”.
      • Set new version number: “Projects / Project Properties / Publising” - “VersionCode”, “VersionName”.
    • “Build / Android App Bundle (.aab)”.
      • A file “conference_selfie.aab” is generated.
  • By this app building, “MIT App Inventor” created a new keystore.
    • MIT App Inventor”.
      • Export the new keystore: “MIT App Inventor” - “Projects / Export Keystore”, save as “hemmerling_mit.keystore”.

3.2 Upload the MIT App Inventor Private Key to Google Play

"Use existing app signing key from Java keystore" - Failure
  • “Google Play Console” - “Test and release / Setup / App signing” - “Let Google Play manage your app signing key”.
    • “Use existing app signing key from Java keystore”.
    • Execute “java -jar pepk.jar –keystore=hemmerling_mit.keystore –alias=androidkey –output=hemmerling_mit.zip –rsa-aes-encryption –encryption-key-path=encryption_public_key.pem”.
      • “Enter password for store 'hemmerling_mit.keystore'”: “android”.
      • “Enter password for key 'androidkey'”: “android”.
    • “Upload private key” - Upload of “hemmerling_mit.zip” was rejected by the error message “The private key doesn't match the current app certificate” :-(.
"Use existing app signing key from another repository" - Failure
  • “Google Play Console” - “Test and release / Setup / App signing” - “Let Google Play manage your app signing key”.
    • “Use existing app signing key from Java keystore”.
    • Execute “java -jar pepk.jar –keystore=hemmerling_mit.keystore –alias=androidkey –output=hemmerling_mit.zip –rsa-aes-encryption –encryption-key-path=encryption_public_key.pem” ???????
      • “Enter password for store 'hemmerling_mit.keystore'”: “android”.
      • “Enter password for key 'androidkey'”: “android”.
    • “Upload private key” - Upload of “hemmerling_mit.zip” was rejected by the error message “The private key was not properly encrypted, or is not a type of key we support” :-(.

3.3 Create an "App icon" Screenshot with MIT App Inventor

Resources

My first App

App Signing for Google Play

1 Basics of App Signing

2 Android Keystore System

3 Publishing an MIT App Inventor App to Google Play

General Resources


When this document changes ! Site Navigation ( My Business ! My Topics ! Imprint / Contact ! Privacy Policy ! Keyword Index ! ! Google+ Publisher "hemmerling" )

 
en/android14.html.txt · Last modified: 2025/05/21 21:58 (external edit) · []
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki