# 位置情報の比較

*スキルレベル: エキスパート*

## 開始前に

* [Google APIキー](https://help.adalo.com/ja/database/location/getting-your-google-api-key)を生成していることを確認してください
* [locationプロパティタイプ](https://help.adalo.com/ja/database/location/the-location-property-type)と[locationマジックテキスト](https://help.adalo.com/ja/database/location/location-magic-text-and-formatting)について知っていること
* [ユーザーのデバイスの位置を取得](https://help.adalo.com/ja/database/location/getting-the-users-location)する方法を知っていること
* この機能を使用するには有料のAdaloプランが必要です
* [条件とフィルタリング](https://help.adalo.com/ja/component-basics/conditions-and-filtering)について知っていること
* アプリがユーザーの位置情報をリクエストするたびに、Googleプランに料金が発生する可能性があることに注意してください

{% hint style="warning" %}
英語以外のブラウザ言語を使用すると、フィルタリングルールが壊れる可能性があります。
{% endhint %}

## ウォークスルー

{% tabs %}
{% tab title="シンプル" %}

#### ロケーションに基づいたリストの並べ替え

**1.)** 2つの場所または静的な数値の距離や近接に基づいてリストを並べ替えることができます。これを行うには、並べ替えたいリストをクリックし、接続されたコレクションにロケーションプロパティがあることを確認してください。ここでは、Tripsのリストがあります:

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-fb0728be6a2e0214f80c647fb73d7bb148f6dc04%2FScreen%20Shot%202022-05-02%20at%207.34.19%20PM.png?alt=media)

**2.)** 次に、**Sorting**ドロップダウンをクリックし、並べ替えたい順序を最もよく表す**Location**オプションを選択します。この場合、ユーザーに最も近いTripsを表示したいので、**Closest to Farthest**を選択します。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-7e3303f6fee4aba7596d830d244a6f12fe5fde24%2FScreen%20Shot%202022-05-02%20at%207.37.00%20PM.png?alt=media)

**3.)** 今度は、リストアイテムを比較したいロケーションを選択する必要があります。この場合はユーザーのデバイスの位置です。**Sort in relation to**ドロップダウンで**Current Device Location**を選択します。また、Fallback Addressを検索して入力するように求められます。参照された並べ替えロケーションが見つからない場合には、フォールバックアドレスが使用されます。この場合、ユーザーのデバイスの位置が特定できない場合にフォールバックアドレスが使用されます。

{% hint style="info" %}
**注意:** フォールバックアドレスが空白のままで、ユーザーのデバイスの位置が特定できないか、許可が得られなかった場合、リストのフィルタリングは無視されます。
{% endhint %}

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-1384a8a4695281ec567aff8863d529e08c588dc6%2FScreen%20Shot%202022-05-02%20at%207.40.44%20PM.png?alt=media)

**4.)** ログインユーザーのレコードから情報を選択するか、**Custom Location**を検索して使用することもできます。ただし、**Custom Location**は常に同じままであることに注意してください。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-fa29e2f8eb49c4e6e4fc2fe3fca4fdc080edb0b3%2FScreen%20Shot%202022-05-02%20at%207.43.56%20PM.png?alt=media)

#### ロケーションに基づいたリストのフィルタリング

**1.)** ロケーションに基づいてリストをフィルタリングすることもできます。Tripsのリストの場合、ユーザーと同じ都市にあるTripsのみを表示したい場合があります。これを行うには、リストを選択してから\*\*+ Add Custom Filter\*\*をクリックします。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-e0ae215d5b48482220e065240ce5826db6a5a7ce%2FScreen%20Shot%202022-05-02%20at%207.47.14%20PM.png?alt=media)

**2.)** マジックテキストオプションで**Location > City**を選択します。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-6e5fa11532c0447eae7a6ba503a1c49dd2b656b2%2FScreen%20Shot%202022-05-02%20at%207.48.54%20PM.png?alt=media) **3.)** オペレータを**等しい**に設定し、2番目のドロップダウンを**Current Device Locations's > City**に設定します。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-0ae4ec204de4fff5fee9cc915e668699f9cab8f4%2FScreen%20Shot%202022-05-02%20at%207.57.26%20PM.png?alt=media)

**4.)** 代わりに、ロケーションのサブプロパティを使用せずに、ロケーションプロパティを直接使用することもできます。ユーザーの位置から一定の距離内のトリップのみを表示したいとします。それもできます。**+Add Custom Filter**ボタンをクリックして、別のカスタムフィルタを追加しましょう。

**5.)** 今度は、フィルタのドロップダウンで、アイコンの隣にある**Location**オプションをクリックします。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-17a92bf2855b8509c0a213700720520b307dad8d%2FScreen%20Shot%202022-05-02%20at%208.00.31%20PM.png?alt=media)

**6.)** ここには新しいオプションがあります。2番目のドロップダウンで**Is within**または**Is not within**を選択できます。**Is within**を選択しましょう。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-1dc91d637a1c9f7a3ebfdd5a1ea910e2ab7b74a4%2FScreen%20Shot%202022-05-02%20at%208.03.04%20PM.png?alt=media)

**7.)** 今度は、比較に使用する半径距離と単位を設定しましょう。**30マイル**を選択しますが、必要に応じてここでもMagic Textを使用することができます。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-b6a69e51b7ae260cb1fc293e97d7d936ec5041af%2FScreen%20Shot%202022-05-02%20at%208.04.47%20PM.png?alt=media)

**8.)** 最後に、最初のロケーションと比較する2番目のロケーションを選択しましょう。トリップのシナリオでは、ドロップダウンから**Current Device Location**を選択します。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-c105e00b2f78fdf48f98915eff6dc3a00d59d485%2FScreen%20Shot%202022-05-02%20at%208.07.10%20PM.png?alt=media)

**9.)** これで、トリップのリストは、ユーザーと同じ都市にあるトリップ、またはユーザーから30マイル以内のトリップのみを表示するようにフィルタリングされます。\\

#### 条件付きアクションと可視性でのロケーションの使用

これらのフィルタリングオプションは、条件付き可視性と条件付きアクションにも適用できます。両方の場合でも、1つのフィルタのみを適用できます。たとえば、以下の条件付き可視性では、ユーザーが現在のトリップの位置から1マイル以内にいる場合にのみラベルが表示されます：

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-27b950406cf827afb511611dbf76153a4c6f3c1b%2FScreen%20Shot%202022-05-02%20at%208.12.28%20PM.png?alt=media)

最後の例では、ボタンのアクションは、現在のトリップの都市がユーザーのデバイスの位置の都市と等しい場合にのみ発生します。

![](https://797861279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4EFNSNZLMs5AZ70x2P33%2Fuploads%2Fgit-blob-f55933043d257d9da7c9e47f03c1d5a66040cba1%2FScreen%20Shot%202022-05-02%20at%208.15.50%20PM.png?alt=media)
{% endtab %}
{% endtabs %}

## もっと詳しく知る

* カウントにもロケーションフィルタリングロジックを適用できます。
* フィルタリングやソートは、カスタムリストだけでなく、すべてのプリセットリストタイプにも使用できます。
* [App Academy](https://appacademy.adalo.com/course/geolocation-uber-airbnb)のロケーションの使用に関するコースをチェックしてください。

## ヘルプ

この記事に関する追加のヘルプが必要な場合は、いつでも[コミュニティフォーラム](https://forum.adalo.com/)で質問できます！投稿にこの記事へのリンクも貼っておくことを忘れないでください！
