この記事は、オーディエンスターゲティングアプリで、モバイルデバイスのルールとして物理的な画面サイズ属性を使用しているユーザーセグメントに基づいてコンテンツを表示する際の制限を記録したものです。 この条件で作成されたコンテンツは、ユーザーが閲覧できないことが発覚したのです。 これは、Liferayインスタンス 、物理サイズ属性を使用するルールの場合、Desktopデバイスを検出できないことを意味します。
ユースケース
- Liferay DXP 7.0を起動します。 (テストのため、DXP 7.0を使用しています)。
- Audience TargetingとMobile Deviceのアプリを展開する。
- コントロールパネル → 設定 → モバイルデバイスファミリに移動してください。
- Desktop という新しいデバイスファミリーと、 Desktopという分類ルールが追加されます。 物理画面サイズ」分類ルールの値を入力します。
- コントロールパネル → 設定 → オーディエンスターゲティングに移動します。
- ユーザーセグメントを作成します:
- 名称: デスクトップベース
- ルールがあります: セッション属性 → デバイス → デスクトップ.
- このユーザーセグメントに対して、いくつかのコンテンツを作成する。
コンテンツを作成した後、テストでは、 デスクトップ端末で、そのような条件のセグメント化されたコンテンツが表示されないことが判明した。
また、 ChromeのUser-Agent Switcherなど、サードパーティ製の「ユーザーエージェント」ブラウザアドオンを使用しても、コンテンツは閲覧できないことが判明しました。
ユーザーエージェントスイッチャーが回避策にならない理由は、一般的にデバイスの物理的なサイズに関する情報が含まれていないためです。 通常、モニターやノートパソコンの物理的な寸法ではなく、使用しているウェブブラウザやOS、画面の解像度に関する情報が含まれています。 (技術仕様については下記をご参照ください)。
解像度
制限事項 - 回避策あり
51Degrees' の実装に限界があることがわかります。 (注:51Degreesは、モバイルデバイスのルールを検証するために使用されるLiferay DXPで使用されるサードパーティの検出ツールです)
ユーザーがUser-Agentアプリを持っているかどうかに関係なく、51Degreesのモバイル検出デバイスは、さまざまなハードウェアオプションによる物理的な寸法を 、検出しません。 つまり、同じ画面解像度を持つ17インチモニターと19インチモニターを区別することはできません。 その代わりに、モバイル端末のルールでは、既知の値である画面解像度(例えば1920x1080、1440x900)を追跡します。
2つの回避策を用意しています:
- 51Degrees は、 Client Side Overrideを実装することで、回避策を提供しています。 これはJavascriptの一部で、デバイスの物理的なサイズに関する情報をCookieに保存するものです。 (これは開発とみなされ、Liferayのサポートポリシーを超えています)。
- もう一つの有効な選択肢は、箱から出している「画面解像度」パラメータを使うことです。 分類ルールの作成時に、1920×1080のように最小・最大の幅と高さをピクセル単位で指定します。
2番目の選択肢は、ほとんどの標準的なデスクトップモニターや大型のノートPCの実際のサイズに近いかもしれません。
追加情報
ユーザーセグメントの作成に関する一般的な情報については、 Managing User Segments の記事をご参照ください。
参考: https://51degrees.com/resources/property-dictionary#ScreenMMWidth
ScreenMMWidth
本機の画面幅をミリメートル単位で参照します。 このプロパティは、デスクトップやスクリーンが内蔵されていないデバイスの場合、「Unknown」を返します。