デフォルトのMainActivity
を使用するのではなく、メインアクティビティとして独自のアクティビティを作成したい。
Androidマニフェストでそれをどのように定義できますか?
マニフェストファイルで、以下のコードを使用して、アクティビティをランチャーアクティビティとして宣言します。
<activity Android:name=".yourActivityName" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
From Android開発者ドキュメント:
ACTION_MAINアクティビティ:タスクの初期アクティビティとして起動します。データ入力および返される出力はありません。
CATEGORY_LAUNCHER:アクティビティはタスクの最初のアクティビティであり、トップレベルのアプリケーションランチャーにリストされます。
アプリケーションタグ内のAndroidManifest.xmlファイルで、アクティビティタグを追加し、デフォルトとして設定されている古いアクティビティタグからアクションMAINを削除します
<application...... >
<activity
Android:name=".DefaultActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.DEFAULT" />
</intent-filter>
</activity>
<activity
Android:name=".NewActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
マニフェストファイルで使用できます。
<activity
Android:name=".DefaultActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.DEFAULT" />
</intent-filter>
</activity>
<activity
Android:name=".NewActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
それは非常に重要です:
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
それは簡単です。 Androidマニフェストファイルの追加、
<activity
Android:name="Your Activity Name"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.HOME" />
<category Android:name="Android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Xamarin
では、次のようにクラス定義の上にMainLauncher = true
を追加できます。
[Activity(Label = "UserActivity", MainLauncher = true)]
public class UserActivity : ListActivity