带有多个应用程序标签的AndroidManifest.xml

Nic*_*016 6 java xml android manifest android-manifest

我对Android编程非常陌生,而且我一直试图找出为什么我的应用程序在按下按钮时强行关闭.我把它缩小到了几个方面.

一个问题; <application>清单xml中是否可以有多个标记?

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.dummies.android.beergoggles"
  android:versionCode="1"
  android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".MainActivity"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="Result" android:label="@string/app_name">        </activity>
</application>
<application android:name="MyApp" 
   android:icon="@drawable/icon" 
   android:label="@string/app_name2"></application>
Run Code Online (Sandbox Code Playgroud)

我一直在研究,但发现只有一篇关于为新应用程序创建新清单文件的模糊帖子.MyApp应用程序只是一个"全局变量"的应用程序,因为我想没有新的应用程序就没有办法做到这一点.

以下是MyApp的代码,以防它有用:

import android.app.Application;

public class MyApp extends Application{

public static int resultCount;

public int getCount(){
    return resultCount;
  }
public void setCount(int c){
    resultCount = c;
}
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

Mar*_*zek 17

根据文档清单文件,只有一个应用程序元素是有效的.

只需要<manifest>和<application>元素,它们 必须存在且只能出现一次.


cch*_*son 9

我认为你想要的是使用你的自定义Application作为主要Application.

因此,您不要添加新的<application>,只需将其名称指定给main <application>(您需要指定其完整包).

<application android:icon="@drawable/icon" android:label="@string/app_name" android:name:"com.mypackage.MyApp"> <!-- Added the android:name -->
    <activity android:name=".MainActivity"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="Result" android:label="@string/app_name">        </activity>
</application>
Run Code Online (Sandbox Code Playgroud)

在这里查看信息