In PowerShell you will often use the sample using the above library.
First, use the Garmin SDK and a part of Jungle to execute the build.
# Since the description of AutomationConnectIQ.Lib is troublesome, make the following settings
using namespace AutomationConnectIQ.Lib;
# Creating SDK environment
$sdk = New-Object GarminSDK -Property @{
Key = "developer_key" # Specify the developer key
}
# Load project file
$proj = New-Object Jungle("monkey.jungle")
# Build the project
# Executable is placed under bin under the project.
$sdk.BuildProgram($proj, "fr45")
# Build the project
# The execution format is specified by a parameter.(The example below is% TEMP%hoge.prg)
$sdk.BuildProgram($proj, "fr45", $env:temp + "hoge.prg")
# Build all devices
# The output file is% TEMP% devicename.prg
# Build logs are saved in% TEMP% output.txt
$filename = Join-Path $env:TEMP "output.txt"
$tw = New-Object System.IO.StreamWriter($filename, $false, [Text.Encoding]::GetEncoding("UTF-8"))
$sdk.Writer = $tw # Set the output destination of logs generated in Garmin SDK
# Build all targets
foreach ($dev in $proj.Devices) {
$tw.WriteLine($sdk.BuildProgram($proj, $dev, $(Join-Path $env:TEMP $dev".prg")))
}
$sdk.Writer = $null # Cancel log output (must be done before closing the output destination)
$tw.Close()
- The 6th line is the implementation that specifies the developer key file when building.
Note that if you do not make this setting, the build will always fail. - The build process on line 13 is a command to build the program in the standard location for the specified device.
On the other hand, the build process on the 17th line is a command to build a program with the specified file name. - The code on lines 22-24 is an implementation to redirect the log generated in the build command to the specified file.
If you use this, be aware that if you do not implement the post-processing on the 29th and 30th lines, problems may occur in the script. - The 26th to 28th lines are the implementation method to build the program for all the targets registered in the project.
コメント