最近クラシックからモダンに切り替えました。
保守の観点からセレクターは基本的に部分セレクターを使用していました。
クラシックでは、アタッチアクティビティ内に配置したアクティビティは何も考えずに要素を指定することで部分セレクター指定になっていましたが、モダンではアプリケーション/ブラウザーを使用アクティビティのウィンドウアタッチモードをアプリケーションインスタンスから単一ウィンドウに都度変更しないと部分セレクターにならないようです。
初期設定を変更する箇所もないようで、使いづらいと感じています。
部分セレクターを使用したい場合、上記方法で行うという認識で間違っていないでしょうか。
よろしくお願いいたします。
Copilotで少し調べてみました。
要は、モダンデザインエクスペリエンスでは、クリックアクティビティなどの個別操作のアクティビティで設定しているセレクターが「部分セレクター」、アプリケーション/ブラウザーを使用アクティビティのウインドウセレクターで設定しているセレクターが「全体セレクター」と思われますため、
モダンデザインエクスペリエンスのルールに従って正しく設定していれば、部分セレクター、全体セレクターは結果的に正しく設定されるため、「部分セレクター」「全体セレクター」という概念を知らなくても良いような気がします。私自身、モダンで開発中に、部分セレクターや全体セレクターを意識したことはありません。(つまり、部分セレクター、全体セレクターはクラシックデザインエクスペリエンスの概念)
回答が役立ったらSolutionにチェックをお願いします。
By default use application/browser uses full selector and all the activities inside it have partial selector.
You don’t need to worry or change full or partial selector explicitly.
こんにちは
初期設定を変更する箇所もないようで、使いづらいと感じています。
この点はプロジェクトの設定でデフォルト値を変更可能です。
モダンではアプリケーション/ブラウザーを使用アクティビティのウィンドウアタッチモードをアプリケーションインスタンスから単一ウィンドウに都度変更しないと部分セレクターにならないようです。
これは動作モードの違いによるものです。
クラシックと同じ動作を期待するのであれば単一ウインドウモードがそれに該当します。
アプリケーションインスタンスの場合、該当するターゲットが同一プロセス・他のウインドウにあった場合でも動作するようになっています。そのため例えば厳密セレクタープロパティは部分セレクターで表現されますが、ウインドウセレクタープロパティでのトップレベルセレクターとの組み合わせで検索されます。
Yoichi様
ご回答いただきありがとうございます。
現在使用しているアクティビティパッケージバージョン23.10.13では、プロジェクトの設定の中にないようです。最新の25.10では表示されました。
アプリケーション/ブラウザーを使用アクティビティでアプリケーションインスタンスの場合、セレクターを汎用化させるためにタイトルに「*」を付加したとしても、内部のアクティビティのウィンドウセレクター(アプリケーションインスタンス)には反映されないため、単一ウィンドウモードにする必要があると判断しました。ウィンドウセレクターを変更する場合、全てのアクティビティに対して変更作業を行わなければいけなくなるという認識です。
他の方の回答でもモダンでは意識していないとのことだったので、何か勘違いしているようでしたら、ご指摘いただけいると幸いです。
ashokkarale様
ご回答いただきありがとうございます。
Yoich様への回答に私の考えを書いています。
何かお気づきの点などございましたら、よろしくお願いいたします。
gorby様
ご回答いただきありがとうございます。
Yoich様への回答に私の考えを書いています。
何かお気づきの点などございましたら、よろしくお願いいたします。
アプリケーションインスタンスモードは、同一ウインドウではなく、同一プロセスでマッチするウインドウを探しに行きますので、アプリケーション/ブラウザーを使用アクティビティでのアプリケーションインスタンスモードでのウインドウセレクター指定は、そのプロセスを特定するために使われていると考えていただく方が良いかと思います。個々のウインドウの指定は内部の個々のアクティビティのウインドウセレクターによって行われます。
そのため、以降にウインドウセレクターが変更となるようなシーンが多くあるようでしたら、単一ウインドウモードの方が変更に対する保守性は上がると思います。
一方で、同一ブラウザの複数タブの内容を操作するようなシーンでは、単一ウインドウモードの場合、操作対象の要素が別タブにある場合、都度アタッチブラウザを行う(単一ウインドウモードでのブラウザを使用アクティビティを使用する)形になり、状況によっては可読性の低下を招く可能性があります。(クラシックでは完全セレクターで記述する方法もありますが)
現状の制約は上記ですので、それぞれのモードの特性を理解して、適宜開発・維持運用含めた視点で好ましいモードを選択いただくと良いかと思います。


