"未解决的课程" AndroidManifest.xml中的错误

时间:2017-05-30 12:03:56

标签: android xml

我在清单xml文件中收到错误:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.shaikhaalothman.playsongservice">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <service
            android:name=".PlaySongService"
            android:enabled="true"
            android:exported="true"></service>
    </application>

</manifest>

它在这一行给了我一个错误:

 android:name=".PlaySongService"

,错误如下:

  

未解决的课程&#39; PlaySongService&#39;

     

验证Android XML文件中的资源引用。

我还没有找到任何有助于在Stackoverflow和其他地方解决我的错误的内容。谁知道我做错了什么?

6 个答案:

答案 0 :(得分:3)

  

在同一个包中输入PlaySongService.javaMainActivity.java   名为com.example.shaikhaalothman.playsongservice,它将解决   自动。

答案 1 :(得分:1)

尽管这是一个较旧的主题,但我认为我应该包括解决此问题的步骤,以帮助任何人:

  1. 验证模块build.gradle文件中的applicationId "com.domain.packagename"行是否输入了正确的域名。
  2. 确保此域名与您的java文件夹下的软件包名称匹配。更新此操作的一种简单方法是转到“项目”窗格右上角的设置齿轮,然后取消选中“隐藏空的中间包”,然后右键单击“ refactor-rename”,将其重新命名为带有域名的文件夹。
  3. 最后,确保此域名也已正确输入到清单文件顶部的package标签中。

我的问题是java下的目录的软件包名称不正确,因此我必须对其进行更改以匹配gradle和manifest文件。

答案 2 :(得分:0)

您必须在“ build.gradle”文件中包含路径。 我有与链接图片相同的问题: Unresolved class

在编辑器中打开“ build.gradle”文件,并向依赖项添加路径行,如下所示: 依赖项{     实施项目(路径:':theClassPathGoesHere')}

答案 3 :(得分:0)

就我而言,上述解决方案均无效,因为我已经检查了软件包名称等是否正确。

因此,我采取了将活动与Android Studio生成的新活动进行比较的方法。我在Android Studio 3.1.3上。我选择了“文件”>“新活动”>“基本活动”,发现的第一件事是默认的包名称为红色。

我检查了一下,确保在模块级别的build.gradle文件中有足够的applicationId不等于我现有活动的软件包名称。我已纠正了该错误,但并没有消除错误。

因此,我完成了生成基本活动的过程,以确保没有收到Unresolved class错误。如我所料,Android Studio生成的AndroidManifest.xml条目没有错误。同时,我现有的活动仍然存在错误。然后,我将现有活动与生成的活动进行了比较。我发现我的活动扩展了Activity类,而生成的扩展了AppCompatActivity类。因此,我尝试从Activity更改为AppCompatActivity。这产生了很多我不想处理的错误,因此我将其从AppCompatActivity更改为Activity。突然之间,Android Studio不再警告我任何Unresolved class错误。

我不确定真正发生了什么。我以为.idea目录中的某些内容可能已损坏,但是将其清除并重新导入并不能解决问题。

总而言之,似乎可以消除Unresolved class错误的是:将活动的Java文件从扩展Activity扩展为扩展AppCompatActivity,然后将其更改回Activity。那为我解决了错误。

答案 4 :(得分:0)

在android:name =“ ____”的android清单文件中,我的包名称错误 因此,请从软件包中所述的清单文件顶部复制我的软件包名称:“ ____” 解决了我的错误

答案 5 :(得分:0)

使用Shift + F6将AndroidManifest.xml中的包从“ com.example.loa”重命名为“ com.example1.loa” ...然后将包从“ com.example1.loa”反向重命名为“ com.example” “ .loa” ...这样就可以解决问题,因为Android Studio将使用新名称重建项目,然后使用旧名称重建项目...