Dua*_*Dub 4 android xamarin.android xamarin
在Visual Studio中,Properties/AndroidManifest.xml文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:installLocation="auto" android:versionName="1.0">
<uses-sdk />
<application android:label="Aftermath" android:largeHeap="true">
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
<activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" /></application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
</manifest>
Run Code Online (Sandbox Code Playgroud)
但是,在设备上安装后,当我使用manifestViewer应用程序(在playstore上提供)检查应用程序的清单时,清单完全不同,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="1"
android:versionName="1.0"
package="Aftermath.Aftermath">
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="15"/>
<application
android:icon="@2130837644"
android:name="mono.android.app.Application"
android:debuggable="true">
<activity
android:name="androclient.activities.AftermathActivity"
android:screenOrientation="landscape"/>
<activity
android:label="Aftermath"
android:icon="@2130837644"
android:name="androclient.activities.TitleScreenActivity"
android:screenOrientation="landscape">
<intent-filter>
<action
android:name="android.intent.action.MAIN"/>
<category
android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<provider
android:name="mono.MonoRuntimeProvider"
android:exported="false"
android:authorities="Aftermath.Aftermath.mono.MonoRuntimeProvider.__mono_init__"
android:initOrder="2147483647"/>
<receiver
android:name="mono.android.Seppuku">
<intent-filter>
<action
android:name="mono.android.intent.action.SEPPUKU"/>
<category
android:name="mono.android.intent.category.SEPPUKU.Aftermath.Aftermath"/>
</intent-filter>
</receiver>
</application>
<uses-permission
android:name="android.permission.INTERNET"/>
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission
android:name="android.permission.ACCESS_NETWORK_STATE"/>
</manifest>
Run Code Online (Sandbox Code Playgroud)
这是正常的吗?如何编辑清单以包含应用程序属性,元数据和活动?
谢谢
Xamarin Attributes在代码中用于在构建时填充Android Manifest.您可以使用Attributes为Activity,Service,BroadcastReceiver,IntentFilter,Application,MetaData等.
所以如果你BroadcastReceiver在Xamarin中有这样的话
[BroadcastReceiver]
[IntentFilter(new string[] { "com.example.filter" }]
public class BR : BroadcastReceiver {}
Run Code Online (Sandbox Code Playgroud)
你将获得生成的清单与你的BroadcastReceiver和IntentFilter.
或者像一个活动
[Activity(MainLauncher = true, ScreenOrientation = Android.Content.PM.ScreenOrientation.Portrait)]
public class MainActivity : Activity {}
Run Code Online (Sandbox Code Playgroud)
或者在Application类中
[Application(Theme = "@style/AppTheme", Icon = "@drawable/icon")]
public class App : Application
Run Code Online (Sandbox Code Playgroud)
所有这些都将包含在生成的中 Android Manifest
| 归档时间: |
|
| 查看次数: |
5267 次 |
| 最近记录: |