私はXamarin Androidでアプリケーションを作成しています。それはカスタムURIスキームとユニバーサルリンクサポートを持ち、使用される特定のURIスキームとユニバーサルリンクドメインは、私がプロダクションアプリをビルドしているのか、QA目的のためにテスト版のアプリをビルドしているのかによって異なります。これらの設定は最終的にインテントフィルタとしてAndroidManifest.xml
ファイルに格納されます。AndroidManifest.xmlに属性を使用せずにXamarin Androidを使用する
Xamarin's documentationは、Xamarin Androidアプリを開発するときに、カスタム属性を使用してActivity
クラスのインテントフィルタを指定できることを示します。 Xamarinのビルドプロセスは、ビルド時にこれらを関連するXMLセクションに変換し、AndroidManifest.xml
ファイルに挿入します。
これは役に立ちますが、自動ビルドプロセスを使用してビルド時にこれらのインテントフィルタのプロパティの一部を取り替えると、少し制限があります。理想的には、AndroidManifest.xml
ファイルのこれらのセクションを手動で制御したいので、ビルドスクリプトで関連セクションを更新し、インテントフィルタセクションを直接追加/削除/変更することができます。
私の質問は、これが可能かサポートされているかどうかです。 Activity
クラスのIntentFilterAttribute
宣言を省略し、XMLファイルに安全に設定することはできますか?または、Xamarinはフィルタ属性を使用する必要がありますが、何らかの理由でこれが問題になるのを避けるでしょうか?
応答のおかげで、それは良いタイミングです:)私はこれが事実だろうと思っていました。将来のリリースでAndroidManifest.xmlを操作するために、.NET構成ファイルのconfigトランスフォームのようなものを使用できることは確かに素晴らしいことです。その間、私は、コンパイルステップの直前にビルド時にActivity.csファイルの属性をつぶやくことに頼っていました。これは理想的ではなく、簡単ではありませんが、機能します!私はその強化について注意を払うつもりです。ありがとう。 – John