在Android Studio中,我出现了同步错误:
ERROR: Failed to parse XML in C:\...\app\src\main\AndroidManifest.xml
ParseError at [row,col]:[70,1]
Message: expected start or end tag
Affected Modules: app
我在androidmanifest.xml中添加了android:hardwareAccelerated =“ true”,但这不能解决我的问题。如何解决?
AndroidManifest.xml
<!--android:hardwareAccelerated ="true"-->
<application
android:name=".App"
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:roundIcon="@drawable/icon_round"
android:supportsRtl="true"
android:theme="@style/Theme.MaterialComponents.Light.NoActionBar"
android:hardwareAccelerated="true">
<activity
android:name=".SelectColor"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".AddAimActivity"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".MainActivity"
android:screenOrientation="sensorPortrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".PopActivity"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".AddActionAtivity"
android:theme="@style/AppTheme"
android:screenOrientation="sensorPortrait" />
<activity
android:name=".SelectIconActivity"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".EditActionActivity"
android:theme="@style/AppTheme"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".EditRoutineActivity"
android:theme="@style/AppTheme"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".EditAimActivity"
android:theme="@style/AppTheme"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".AddReminder"
android:screenOrientation="sensorPortrait"/>
<receiver
android:name=".AlarmReceiver"
android:screenOrientation="sensorPortrait"/>
<activity
android:name=".AddRoutine"
android:theme="@style/AppTheme"
android:screenOrientation="sensorPortrait"/>
<service android:name="net.eagledev.planner.BackgroundService" android:exported="false" />
<service android:name=".NotificationService"/>
</application>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
应用模块
compileSdkVersion 28
defaultConfig {
applicationId "net.eagledev.planner"
minSdkVersion 23
targetSdkVersion 28
versionCode 5
versionName "0.6"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/proguard/androidx-annotations.pro'
}}
依赖性
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0-alpha'
implementation 'com.android.support:design:28.0.0'
implementation 'com.getbase:floatingactionbutton:1.10.1'
implementation 'com.github.clans:fab:1.6.2'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.android.support:recyclerview-v7:28'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.android.support:recyclerview-selection:28.0.0'
def room_version = "1.1.1"
implementation "android.arch.persistence.room:runtime:$room_version"
annotationProcessor "android.arch.persistence.room:compiler:$room_version"
implementation 'com.android.support:gridlayout-v7:28.0.0'
答案 0 :(得分:2)
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
转到应用程序->> src->> main中的项目文件夹,然后使用记事本修改AndroidManifest.xml。
您需要将-uses权限-放在
之间 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.exemple">
和
<application>
</application>
答案 1 :(得分:1)
只需转到清单的第70行,您会发现任何特殊字符,例如-@,!,#、。在我的情况下,这是一个点(。),我只是删除了该点而错误消失了。
原因是[row,col]处的ParseError:[70,1]
假设错误在第70行。
答案 2 :(得分:0)
您的清单应采用以下格式:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test">
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<application
android:hardwareAccelerated="true">
...
</application>
</manifest>
https://developer.android.com/guide/topics/manifest/manifest-intro
答案 3 :(得分:0)
在处理较旧的项目并对其进行更新时,恰好具有该确切错误。 我通过在文本编辑器NotePadd ++中打开Manifest文件并更正特殊字符的问题来解决该问题。
在我的清单中,获得互联网许可后,我有一个特殊角色。 它说LS。不知道是什么,但是我删除了字符,保存了XML,然后再次尝试运行Gradle Sync,它解决了问题。从“文本编辑器”转到清单文件的第70行,并删除特殊字符,然后尝试查看gradle是否可以继续工作。
答案 4 :(得分:0)
更新gradle之后,我也遇到了类似的问题...在我的清单中。
$source = "C:\tmp\repertoire"
$destination = "C:\tmp\repertoire.zip"
Add-Type -assembly "system.io.compression.filesystem"
[io.compression.zipfile]::CreateFromDirectory($Source, $destination)
并将其更改为
<activity android:name=".motoController">
android:screenOrientation="landscape"
</activity>
问题消失了...
答案 5 :(得分:0)
[row,col]检查清单文件中的确切行号和列号,并删除所有不必要的字符,然后您的问题就会解决。
如果错误仍未解决,请尝试清理,重建或构建项目。有时重新启动android studio将解决问题。尝试设置->无效并重新启动->无效缓存。
以上任何解决方案都可以解决此错误。 如有其他疑问,请在评论框中提出。
答案 6 :(得分:0)
我有这个问题。...
之前
<application
android:name=".data.ThisApplication"
android:allowBackup="true"
android:label="@string/app_name" />
之后
<application
android:name=".data.ThisApplication"
android:allowBackup="true"
android:label="@string/app_name"
我只是删除“ />”
此后没有错误
答案 7 :(得分:0)