簡體   English   中英

“標簽 <Activity > 屬性名稱包含無效字符&#39;&#39;。 “Android Manifest

[英]“Tag <Activity > attribute name has invalid character ' '. ” Android Manifest

我在Android Manifest中收到錯誤“Tag屬性名稱有無效字符'。”,而沒有明顯無效的字符。 這是代碼:

<activity
        android:name="Quiz 31"
        android:configChanges="orientation|keyboardHidden"
        android:label="Quiz 31"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.NoTitleBar" >
        <intent-filter>
            <action android:name="com.SoulSlayerAbad.AMQ.QUIZ31" />

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

如您所見,代碼中沒有''字符。 有誰知道為什么會這樣? 需要注意的一點是,我使用Eclipse控制台內部運行的幾行Java生成了這段代碼。 代碼是:

        int Begin = 0, End = 0; 
    Scanner sc = new Scanner(System.in);

    String Text = " <activity "+
            "android:name=\"Quiz "+Begin+"\" "+
            "android:configChanges=\"orientation|keyboardHidden\" "+
            "android:label=\"Quiz "+Begin+"\" "+
            "android:screenOrientation=\"portrait\" "+
            "android:theme=\"@android:style/Theme.NoTitleBar\" > "+
            "<intent-filter> "+
                "<action android:name=\"com.SoulSlayerAbad.AMQ.QUIZ"+Begin+"\" /> "+

                "<category android:name=\"android.intent.category.DEFAULT\" /> "+
            "</intent-filter> "+
        "</activity> ";

    System.out.println("Begining:");
    Begin = sc.nextInt();
    System.out.println("End At:");
    End = sc.nextInt();
    while(Begin <= End){
        System.out.println(Text);
        Begin++;
    }

android:name應該引用代表該活動的類路徑。 它不得包含任何特殊字符或空格。

例如:

android:name="com.json.test.MainActivity"

這里, MainActivity是擴展Activity的類文件。

您的name屬性應包含您的活動類:

android:name實現活動的類的名稱,Activity的子類。 屬性值應該是完全限定的類名(例如,“com.example.project.ExtracurricularActivity”)

android:name不能包含空格,它是類的名稱。

對於初學者來說,你錯過了一個逃脫的報價; 你確定代碼編譯好嗎?

"<action android:name=\"com.SoulSlayerAbad.AMQ.QUIZ"+Begin+"\" /> "+

+Begin之前的雙引號之前刪除了缺失。

其次,如果你實際上並沒有錯過那個斜線,但是當你把它粘貼在這里時,它看起來就像它,也許是一個奇怪的控制角色使它成為那條線。

嘗試刪除該行並從頭開始重新輸入。

您還可以在十六進制編輯器中打開清單文件,並確認沒有混合奇怪的不可打印字符。

你的android:name不包含空格或特殊字符。 例如,android名稱應該是這樣的

<activity  
android:name="com.example.users.projectname.MainActivity">
</activity>

在額外的package中也需要用英文字母命名其他情況AndroidManifest給出類似的錯誤。 我經歷過的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM