1

VisualStudio2012とMonodroidを使用してAndroidアプリ開発のテストを開始しました。これまでのところ良いのですが、最初に気付いたのは、新しいプロジェクトを開始してもAndroidManifest.xmlが作成されなかったことです。プロジェクトのプロポーションから生成できることがわかりました。結果:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk />
<application>
</application>
</manifest>

また、自動生成されたActivity1.csに次の行があることに気付きました。

[Activity(Label = "Apptest", MainLauncher = true, Icon = "@drawable/icon")]

しかし、上記のコード行を削除して、次のようにmanifest.xmlを介して統合しようとすると、問題が発生します。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
  <uses-sdk />
  <application android:icon="@drawable/Icon">
     <activity class=".Activity1" 
               android:label="Apptests">
       <intent-filter>
         <action android:name="android.intent.action.MAIN" />
         <category android:name="android.intent.category.LAUNCHER" />
       </intent-filter>
    </activity>
  </application>
</manifest>

これは、プロジェクトを実行しているときに起こっていることです

AndroidManifest.xmlでActivity1.csを正しく説明するにはどうすればよいですか?

4

3 に答える 3

2

Androidのドキュメントによると、のような属性はありません<Activity class="">。する必要があります<Activity android:name="">

ただし、Mono for Androidは、カスタム属性を使用してAndroidManifest.xmlのほとんどすべてを処理するため、わざわざ何かを追加する必要はありません。

したがって、あなたの場合、主張する場合、AndroidManifest.xmlのアクティビティセクションは次のようになります。

<activity android:name=".Activity1" android:label="Apptests">

于 2012-10-31T22:54:36.520 に答える
1

Monodroidはデフォルトで、ビルド時にマニフェストファイルを作成します。プロジェクトの設定と注釈を取得し、それらからマニフェストファイルを作成します。アクティビティのアノテーションを削除しないでください。そのままにしておくと、monodroidが処理し、マニフェストにある他のものとマージします。

于 2012-10-29T14:43:18.347 に答える
1

AndroidManifest.xmlはビルドプロセスの一部として生成され、Properties \ AndroidManifest.xml内にあるXMLは、カスタム属性に基づいて生成されたXMLとマージされます。

于 2012-10-30T06:46:02.530 に答える