AndroidManifest.out.xml生成时出错

时间:2010-12-30 08:10:43

标签: android

更新:

它变成了一个损坏的AndroidManifest.xml文件

  1. 我将日志记录设置为详细信息以获取有关错误的更多信息。
  2. 我最终在eclipse中创建了一个新的android项目,并将我已损坏的AndroidManifest.xml文件与新文件进行比较。
  3. 我一个接一个地添加了adob行。
  4. 我清理了项目并重新重建。
  5. 之后它工作,我能够运行模拟器。


    我在清单文件中添加了说明以包含Admob模块,该模块向我显示错误消息:

    控制台消息:

    Unparsed aapt error(s)! Check the console for output.Unknown    Android Packaging Problem
    

    错误讯息:

    02:56:23,077 FATAL [main] Main  - No embedded stylesheet instruction for file: file:/Users/eladio/Documents/workspace/NprStationFinder/AndroidManifest.xml
    org.eclipse.wst.xsl.jaxp.debug.invoker.TransformationException: No embedded stylesheet instruction for file: file:/Users/eladio/Documents/workspace/NprStationFinder/AndroidManifest.xml
        at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:225)
    

    代码段:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.caritos.android.nprstationfinder" android:versionCode="1"
        android:versionName="1.0">
        <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>
    
            <!-- The application's publisher ID assigned by AdMob -->
            <meta-data android:value="xyz" android:name="ADMOB_PUBLISHER_ID" />
    
            <!-- AdMobActivity definition -->
            <activity android:name="com.admob.android.ads.AdMobActivity" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:configChanges="orientation|keyboard|keyboardHidden" />
    
            <!-- Track Market installs -->
            <receiver android:name="com.admob.android.ads.analytics.InstallReceiver" android:exported="true">
                <intent-filter>
                    <action android:name="com.android.vending.INSTALL_REFERRER" />
                </intent-filter>
            </receiver>
    
            <meta-data android:value="true" android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" />
        </application>
    
        <!-- AdMob SDK requires Internet permission -->
        <uses-permission android:name="android.permission.INTERNET" />
    
        <uses-sdk android:minSdkVersion="4" />
    </manifest> 
    

2 个答案:

答案 0 :(得分:33)

当我们运行XML文件时会出现此错误..删除main.out。文件(从左侧)。点击相应的java文件并运行它。现在它将正常工作.. 注意:始终运行Java文件。

答案 1 :(得分:8)

我认为这实际上是一个Eclipse的东西,而不是一个损坏的XML文件?当它发生时,查看运行 - &gt;在XSL类别下运行配置,看看是否有AndroidManifest.xml的条目......它是否在制作“.out”文件?如果是这样,Eclipse可能会尝试编译XML文件,而不是将其作为Android应用程序运行。删除XSL运行配置,然后将您的应用程序作为Android应用程序配置之一运行。

编辑:对我来说,这是从XML窗口运行时触发的,而不是来自例如Java窗口。一种更改此行为的选项:首选项 - &gt;运行/调试 - &gt;启动,在“启动操作”下选择“始终启动先前启动的应用程序”。这可能带来不便,但它现在对我有用。我徒劳地试图找到一种方法来防止特殊处理.XML文件。