我想创建自己的Application对象,类似于以下内容:
namespace MyNameSpace.Android
{
public class MyApplication : Application
{
public override void OnCreate()
{
base.OnCreate();
// do application specific things here
}
}
}
如何让应用使用MyApplication
对象?我的理解是我必须在清单中指定这个,但我不能让它工作。应用程序部署正常,但无法运行。
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="preferExternal"
package="abc.mypackage">
<uses-sdk android:targetSdkVersion="14" />
<application android:label="MyMobileApp"
android:theme="@style/Theme.FullScreen"
android:screenOrientation="portrait"
android:icon="@drawable/Logo"
android:name=".MyNameSpace.Android.MyApplication"/>
</manifest>
请注意,我已尝试android:name=".MyNameSpace.Android.MyApplication"
属性中大写和小写字母的所有变体形式,包括是否带有前导.
字符。
如果删除该行,则应用程序运行正常。
答案 0 :(得分:3)
解决方案是添加以下类属性&amp;我的自定义Application类的构造函数:
namespace MyNameSpace.Android
{
[Application(Debuggable = true, ManageSpaceActivity = typeof(MyMainActivity))]
public class MyApplication : Application
{
public MyApplication(IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
{
}
public override void OnCreate()
{
base.OnCreate();
// do application specific things here
}
}
}