Как я могу использовать bixby для запуска приложений на Google Maps? - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь открыть карты Google, используя ключ для соединения с составной картой, но не знаю, что включить в ключ payload-URI для запуска приложения. В документации используется пример, который закомментирован, но я не знаю, что заполнять для приложения (google-maps).

Я получаю две ошибки: неизвестный ключ message/app-launch.

Это код, который мы пытаемся использовать, чтобы при нажатии на составную карту открывались карты Google с запуском приложения.

// PersonSelectionView.view.bxb
input-view {
  match: Spot (this)

  // optional selection dialog to overwrite any other default dialog
  message (Pick a spot)

  render {
    // used to iterate over the list of candidates
    selection-of (this) {
      navigation-mode {
        read-none {
          list-summary ("There are #{size(this)} #{value(categories)} spots near you")
          item-selection-question (Which one would you like?)
        }
      }
      where-each (one) {
        // you can use conditional logic to control how candidates are displayed,
        // using either a standard layout with a match pattern, or a layout macro
        compound-card {
          content {
            map-card {
              title-area {
                slot1 {
                  text {
                    value("#{value (one.spotName)}")
                  }
                }
                slot3 {
                  single-line {
                    text {
                      value("#{value (one.distance)} Miles away")
                    }
                  }
                }
              }
              aspect-ratio (1:1)
              markers {
                marker {
                  geo ("Location.point")
                  icon {
                    template (/images/icons/red-marker.png)
                  }
                  width (15)
                  height (20)
                  anchor-x (5)
                  anchor-y (15)
                  rotation (0)
                }
              }
            }
            paragraph {
              value {
                template ("#{raw(description)}")
              }
              style (Detail_L)
            }
          }
          on-click {
            message ("TESTING THIS MESSAGE")
            app-launch {
              //payload-uri ("bixby://com.android.systemui/DummySystem/punchOut")
            }
          }
        }
      }
    }
  }
}

Ответы [ 2 ]

3 голосов
/ 16 апреля 2019

Ошибка «Неизвестный ключ» означает, что ключ, который вы пытаетесь определить, не является одним из допустимых дочерних ключей ключа, в котором вы находитесь в данный момент. Справочный раздел Bixby DeveloperДокументация предоставляет каждому ключу действительные дочерние ключи.

И app-launch, и message не являются дочерними ключами on-click.

  • app-launch не может быть определено в on-click.Он должен быть определен в своем собственном result-view.

  • message может быть определен несколькими ключами, но не on-click

Вашon-click потребуется перенаправить на отдельный result-view, который будет содержать ключ app-launch с правильным определенным payload-uri.

Вам потребуется следующее для реализации описанного вами поведения:

  • Действие (и поддерживающий Action Javascript) для возврата URI
  • Концепция для хранения URI, возвращенного действием
  • A result-view с match, которыйсоответствует Концепции

Пример Действие:

action (LaunchDefinedUri) {
  description (Launches the defined uri)
  type (Commit)
  collect {
    input (launchUri) {
      type (LaunchUri)
      min (Required) max (One)
    }
  }
  output (LaunchUri)
}

Пример Действие Javascript:

module.exports = {
  function: LaunchDefinedUri
}

function LaunchDefinedUri(launchUri) {
  return launchUri
}

Пример Концепция:

text (LaunchUri) {
  description (Uri to be launched)
}

ПримерПредставление результатов:

result-view {
  match: LaunchUri(this)

  app-launch {
    payload-uri("#{value(this)}")
  }

  render {
    nothing
  }
}

Что касается API Карт Google, в частности, документация Карт Google , кажется, предоставляет информацию о том, как определить правильные URI для вашей конкретной цели и поведения.

1 голос
/ 23 апреля 2019

Пожалуйста, загляните в эту официальную библиотеку, предоставленную командой Bixby, которая предоставляет доступ к Google Maps.

https://bixbydevelopers.com/dev/docs/dev-guide/developers/library.navigation

...