Under Review
over 2 years ago

Bug: Unable to detect settings file for watchface/app on Linux

While checking out this https://github.com/Likenttt/DirtyReadPropertyDemo repo and trying to launch it on Linux I cannot get the settings to work as it states there isn't a settings file present. There is, as it works on Windows.

Parents
  • If your app is called "MySuperApp", it seems like the simulator, when clicking on "Edit Persistent Storage -> Edit Application.Properties data", is looking for the settings file in "/tmp/com.garmin.connectiq/GARMIN/Settings/MYSUPERAPP-settings.json".

    So if you manually start the simulator with:

    ${ACTIVE_SDK_PATH}/bin/simulator

    and you copy the `MySuperApp-settings.json` file that you find under the build directory in `/tmp/com.garmin.connectiq/GARMIN/Settings/MYSUPERAPP-settings.json` before running the `monkeydo` command that starts simulating your application, then the settings work as expected in the simulator.

    Seems like you can pass additional files in the simulator environment also with the monkeydo `-a` flag like this:

    monkeydo app.prg device_id -a additional_src_file:destination_src_file

    In our "MySuperApp" example, this would work, assuming you built your app for fenix7 under `build_directory`:

    "${ACTIVE_SDK_PATH}/bin/monkeydo" build_directory/MySuperApp.prg fenix7 -a "build_directory/MySuperApp-settings.json:GARMIN/Settings/${BASE_APP_NAME^^}-settings.json"

Comment
  • If your app is called "MySuperApp", it seems like the simulator, when clicking on "Edit Persistent Storage -> Edit Application.Properties data", is looking for the settings file in "/tmp/com.garmin.connectiq/GARMIN/Settings/MYSUPERAPP-settings.json".

    So if you manually start the simulator with:

    ${ACTIVE_SDK_PATH}/bin/simulator

    and you copy the `MySuperApp-settings.json` file that you find under the build directory in `/tmp/com.garmin.connectiq/GARMIN/Settings/MYSUPERAPP-settings.json` before running the `monkeydo` command that starts simulating your application, then the settings work as expected in the simulator.

    Seems like you can pass additional files in the simulator environment also with the monkeydo `-a` flag like this:

    monkeydo app.prg device_id -a additional_src_file:destination_src_file

    In our "MySuperApp" example, this would work, assuming you built your app for fenix7 under `build_directory`:

    "${ACTIVE_SDK_PATH}/bin/monkeydo" build_directory/MySuperApp.prg fenix7 -a "build_directory/MySuperApp-settings.json:GARMIN/Settings/${BASE_APP_NAME^^}-settings.json"

Children
No Data