Msbuild and Android32 build problem

call

msbuild.build(“PetroBoxMobileApp.dproj”, {extraArgs: “/property:Config=” + “Debug”, platform: “Android32Arm”});

Error

msbuild.build(PetroBoxMobileApp.dproj, [object Object]) {
Running: C:\Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe /nologo “X:\Sistemas\PetroBoxServices\Shared\clientsapp\PetroBoxMobileApp\PetroBoxMobileApp.dproj” /target:Build “/property:Platform=Android32Arm” /property:Config=Debug /property:DCC_DebugInformat…
C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\CodeGear.Common.Targets(278,5): error : Invalid PLATFORM variable “Android32Arm”. PLATFORM must be one of the following: “Win32”, “Win64”, “Android32Arm”, “Android64Arm”, “iOSSimulator32”, “iOSDevice32” "iOSDevice…
C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\CodeGear.Common.Targets(278,5): error : Invalid PLATFORM variable “Android32Arm”. PLATFORM must be one of the following: “Win32”, “Win64”, “Android32Arm”, “Android64Arm”, “iOSSimulator32”, “iOSDevice32” "iOSDevi…
Build started 15/12/2020 22:00:12.
Project “X:\Sistemas\PetroBoxServices\Shared\clientsapp\PetroBoxMobileApp\PetroBoxMobileApp.dproj” on node 1 (Build target(s)).
C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\CodeGear.Common.Targets(278,5): error : Invalid …
MSBuild failed

Hi,

Why you are using msbuild.build instead of delphi.build ?

Syntax is

    delphi.build(project, options);

where is

options: {
  dcc: string; // overrides any version
  delphi: string;
  platform: string;
  aliases: string;
  conditionalDefines: array of string;
  destinationFolder: string;
  dcuDestinationFolder: string;
  includeSearchPath: string;
  unitSearchPath:string;
  namespaces: string
  otherParameters: string;
  updateIcon: string
  updateVersionInfo: {
    codePage: UInt16;
    resLang: UInt16;
    isDll: Boolean;
    version: String;
    fileVersion: String;
    company: String;
    description: String;
    legalCopyright: String;
    legalTrademarks: String;
    productName: String;
    title: String;
    extraFields: EcmaScriptObject;
    }
}

Because is easiest and dont need all that amount of parameters, path and stuff. When i try to use delphi function it fail every time. too many paths to pass from all the libraries. very uncomfortable and error prune when you add a new library.

Msbuild work as expected with linux, win32 and win64, why not use? Which disadvantage have? I believe the unique problem is a little slower. Thats all, i dont care.

Why msbuild dont work with android32 platform?

TBH that seems like something to take up with Embarcadero support?

Maybe. Cant please see how the msbuild command line is assembled?

Sure thing: GitHub - remobjects/train: RemObjects Train is a JavaScript based automated build engine.

Train is open source.

C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\CodeGear.Common.Targets(278,5): error : Invalid PLATFORM variable “Android32Arm”. PLATFORM must be one of the following: “Win32”, “Win64”, “Android32Arm”

Problem at Codegear(sic) dll, no solution then. :frowning:

I have the solution. Is building with “Android” parameter.

Wich is the suggested way to call msbuild to deploy android app, after build?

According to this sample.

the standard call is

msbuild %PROJECT_NAME%.dproj /p:Config=%CONFIG% /p:Platform=Android /t:Deploy

any way to do inside Train?

Best regards.