Android Studio:无法解析符号MainActivity

时间:2014-07-30 15:40:45

标签: java android android-studio manifest

我在此代码中收到错误“无法解析符号MainActivity”。

<activity
        android:name=".MainActivity"          //here
        android:label="@string/app_name"
        android:launchMode="singleTask" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/> 

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

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data
                android:host="MainActivity"
                android:scheme="callback" />
        </intent-filter>
    </activity>

毋庸置疑,MainActivity继承了Activity,包名也是正确的。

为什么?

谢谢

这是目录结构的图像。

Snapshot of the directory structure

7 个答案:

答案 0 :(得分:19)

你的“src&#39;目录是不是设置为源目录?

您的IDE似乎将com.example.fovoapp视为简单的目录结构而不是包。还看着你的链接图像,小&#34; J&#34;关于java文件告诉我也。当java文件设置为源文件时,它通常显示为Class&#34; C&#34;。

我可能错了,但请确保将src目录设置为源,这应该可以解决问题。

答案 1 :(得分:11)

AndroidManifest.xml文件中的包名称,您的类必须相同。

AndroidManifest.xml标题:

&#13;
&#13;
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ahmet.currencies">
&#13;
&#13;
&#13;

代码:

package com.ahmet.currencies;

import ...;


public class MainActivity extends Activity {}

答案 2 :(得分:2)

也许您对src目录使用了错误的路径 它应该在路径中:./yourApp/src/main而不是./yourApp/src/androidTest
你可以手动移动它。

答案 3 :(得分:1)

项目结构,右键单击src文件夹 - &gt;标记目录as-&gt;来源。

现在你的mainactivity.java文件用'j'符号改为'c'符号。

错误是该项目没有可以查找活动类的有效源文件夹。

答案 4 :(得分:0)

build.gradle 文件中添加以下内容。

android {
     sourceSets {
            main.java.srcDirs += 'src/<YOUR DIRECTORY NAME>'
        }
...
...
}

答案 5 :(得分:0)

设置兼容的api级别。我也遇到了同样的错误,因此我在文件->项目结构->应用程序->风味->目标SDK版本

中将api级别设置为23

答案 6 :(得分:0)

清理缓存

文件->使缓存无效/重新启动...