Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-29508

Qt Creator can't run application with Manifest Placeholders in root tag

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P3: Somewhat important
    • None
    • Qt Creator 11.0.2
    • Android Support
    • Mac M1, Qt 6.2.4 (Android Clang arm64-v8a), NDK 21.3.6528147, Gradle 7.4.2
    • Android

    Description

      Qt Creator can't run application when placeholder is in root tag of AndroidManifest.xml. For example:

      // build.gradle
      manifestPlaceholders.appId = "org.qtproject.example"
      
      // AndroidManifest.xml
      <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="${appId}" ...>

       

      The application builds and deploys to device correctly, but when QtCreator try to run it, an error occurs:

      Exception occurred while executing 'force-stop':
      java.lang.IllegalArgumentException: Argument expected after "force-stop"
      	at com.android.modules.utils.BasicShellCommandHandler.getNextArgRequired(BasicShellCommandHandler.java:295)
      	at com.android.server.am.ActivityManagerShellCommand.runForceStop(ActivityManagerShellCommand.java:1177)
      	at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:248)
      	at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
      	at android.os.ShellCommand.exec(ShellCommand.java:38)
      	at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:9211)
      	at android.os.Binder.shellCommand(Binder.java:1049)
      	at android.os.Binder.onTransact(Binder.java:877)
      	at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:4731)
      	at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2628)
      	at android.os.Binder.execTransactInternal(Binder.java:1285)
      	at android.os.Binder.execTransact(Binder.java:1244)
      
      Activity Manager threw the error: Error type 3
      Error: Activity class {/org.qtproject.qt.android.bindings.QtActivity} does not exist.

      It's all good when I use package="org.qtproject.example" in AndroidManifest

      It's all good when I use placeholder in child element like <activity android:name="${appId}.MainActivity" ...>

      example

       

       

      Attachments

        1. test_android.zip
          65 kB
          Kirill Gorshkov
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            portale Alessandro Portale
            kan_kiryan Kirill Gorshkov
            Votes:
            3 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes