首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android Manifest实现问题

Android Manifest实现问题
EN

Stack Overflow用户
提问于 2014-02-14 06:22:07
回答 3查看 299关注 0票数 2

我从来没有完全理解过清单,也没有完全理解如何在清单中添加物品。我这里的清单正在工作,但我想要更改一些东西,而我不知道要更改什么。这是货单

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.magicbuddy.gamble"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.magicbuddy.gamble.Splash"
        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="com.magicbuddy.gamble.welcomeSplash"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="com.magicbuddy.gamble.Dashboard" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.magicbuddy.gamble.Dashboard"
        android:label="@string/app_name" >
    </activity>
    <activity
        android:name="com.magicbuddy.gamble.MainActivity"
        android:label="@string/app_name" >
    </activity>
    <activity
        android:name="com.magicbuddy.gamble.Player"
        android:label="@string/app_name" >
    </activity>
    <activity
        android:name="com.magicbuddy.gamble.Menu"
        android:label="@string/app_name" >
    </activity>
    <activity
        android:name="com.magicbuddy.gamble.Popup"
        android:label="@string/title_activity_popup" >
    </activity>
</application>

</manifest>

我写了两个新的类。一个叫做Player.class,另一个叫做WelcomeSplash.class。目前,正如清单所示,我的闪屏加载并正常工作,然后闪屏上的计时器自动加载下一个屏幕,即dashboard.class。相反,我希望它加载我的一个新类,即WelcomeSplash.class。我不知道如何将我的两个新类正确地添加到清单中。

代码语言:javascript
复制
     startActivity(new Intent(Splash.this, welcomeSplash.class));

我用我的另一个类Dashboard替换了WelcomeSplash,它不会强制关闭,它加载和运行都很好。

EN

回答 3

Stack Overflow用户

发布于 2014-02-14 14:48:32

就像你的代码一样,我做了修改并在这里发布了代码。在Manifest中检查和使用..

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.magicbuddy.gamble"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <activity
        android:name="com.magicbuddy.gamble.Splash"
        android:label="@string/app_name" >

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER"            />
        </intent-filter>



    <activity
        android:name=".gamble.Dashboard" >
    </activity>
    <activity
        android:name=".MainActivity" >
    </activity>
    <activity
        android:name=".Player" >
    </activity>
    <activity
        android:name=".Menu" >
    </activity>
    <activity
        android:name=".Popup" >
    </activity>
 <activity android:name=".WelcomeSplash" >
        </activity>

</application>

</manifest>

不需要再次编写<intent-filter>。谢谢您:)

票数 3
EN

Stack Overflow用户

发布于 2014-02-14 06:28:23

对于您创建的每个新活动,您需要将活动块添加到应用程序部分的清单中。

要添加新的WelcomeSplash类,请添加以下行:

代码语言:javascript
复制
<activity
            android:name="com.magicbuddy.gamble.WelcomeSplash"
            android:label="@string/app_name" >

在标签之间

代码语言:javascript
复制
<application></application>

一旦类在那里,你的splash类就应该以WelcomeSplash.class开始意图

票数 1
EN

Stack Overflow用户

发布于 2014-02-14 06:44:09

正如dgg所说,只需将活动添加到Manifest.xml中即可。

代码语言:javascript
复制
    <application>
...
...
...
        <activity
            android:name="com.magicbuddy.gamble.Player"
            android:label="Player" >
        </activity>
        <activity
            android:name="com.magicbuddy.gamble.welcomeSplash"
            android:label="WelcomeSplash" >
        </activity>
    </application>

如果你有异常"there is no activty to handle intent (com.XXXX.WelcomeSplash) here:

代码语言:javascript
复制
Intent openMainActivity = new Intent("com.magicbuddy.gamble.welcomeSplash");
startActivity(openMainActivity);

您必须使用:

代码语言:javascript
复制
Intent startMain = new Intent(this, welcomeSplash.class); 
startActivity(startMain);

阅读更多信息:

这是一个问题,您的类的真实名称是什么,"WelcomeSplash“或"welcomeSplash",请在您的Manifest.xmlIntent中输入正确的名称!:)

根据Java标准,类名应该在CamelCase中,所以使用"WelcomeSplash“。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21766808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档