相关疑难解决方法(0)

IntelliJ和Android Gradle依赖项 - 无法找到模块

我有以下目录结构:

D:\PROJECT  
+---javaGradleProject1  
+---javaGradleProject2  
+---javaGradleProject3  
\---AndroidProject  
    |   build.gradle
    |   settings.gradle
    \---AndroidModule
            build.gradle
Run Code Online (Sandbox Code Playgroud)

Android模块依赖于与根据AndroidProject在根目录中处于同一级别的所有java gradle项目.

在AndroidProject/settings.gradle中我有:

include ':AndroidModule'

include 'javaGradleProject1'
project(':javaGradleProject1').projectDir = new File(rootDir, '../javaGradleProject1')

include 'javaGradleProject2'
project(':javaGradleProject2').projectDir = new File(rootDir, '../javaGradleProject2')

include 'javaGradleProject2'
project(':javaGradleProject2').projectDir = new File(rootDir, '../javaGradleProject2')
Run Code Online (Sandbox Code Playgroud)

然后在AndroidProject/AndroidModule/build.gradle中我有依赖设置如下:

compile project(':javaGradleProject1')
compile project(':javaGradleProject2')
compile project(':javaGradleProject3')
Run Code Online (Sandbox Code Playgroud)

当我调用时,这种依赖结构完美地工作并构建项目

gradle build
Run Code Online (Sandbox Code Playgroud)

在AndroidProject/build.gradle上.

但是当我尝试将我的IntelliJ与我收到的当前gradle依赖设置同步时

Error: Unable to find module with Gradle path ':javaGradleProject1'
Error: Unable to find module with Gradle path ':javaGradleProject2'
Error: Unable to find module with Gradle path ':javaGradleProject3'
Run Code Online (Sandbox Code Playgroud)

因此,我的项目无法从运行配置运行(它在IDE中根本不编译).我试图通过点击F4和模块依赖关系来手动添加这些依赖项,但在同步之后我的所有更改都被覆盖(实际上,IntelliJ只是将其删除).

我的gradle结构有什么问题吗?

我在IntelliJ …

java android intellij-idea gradle android-studio

15
推荐指数
1
解决办法
3874
查看次数

尝试在Android Studio中实现getSharedPreferences时出现"无法解决方法"错误

我正在尝试创建一个类KeyValueDB,它存储与SharedPreferences交互的方法,但是我遇到了一个只是定义类的问题.我想要构造函数做的就是使用正确的文件名存储一个sharedPreferences对象,但我得到一个"无法解析方法"的getSharedPreferences(java.lang.String,int)'

我传递一个字符串和一个int ...我不确定我做错了什么.感谢任何帮助!

package com.farmsoft.lunchguru.utils;

import android.content.Context;
import android.content.SharedPreferences;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.json.JSONException;

/**
 * Created by sxs on 4/28/2014.
 */
public class KeyValueDB {
    private SharedPreferences sharedPreferences;

    public KeyValueDB(String prefName) {
        sharedPreferences = getSharedPreferences(prefName, Context.MODE_PRIVATE);
    }
Run Code Online (Sandbox Code Playgroud)

java android sharedpreferences

12
推荐指数
1
解决办法
5万
查看次数

Android Studio无法识别导入语句

我有一个中心问题引起的许多问题:Android Studio无法识别导入。

例如,在我的“ ActivityAbout”类中,我具有以下导入语句:

import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.animation.AnimationUtils;
import android.widget.ViewFlipper;
Run Code Online (Sandbox Code Playgroud)

但是,在IDE中(以第一个import语句为例),import android.content.它显示为灰色,当我将鼠标悬停在其上时,它显示为“未使用的导入语句”,该Intent部件显示为红色,当将鼠标悬停在其上时,它表示“无法解析符号意图。” 我的每个import语句都会发生这种情况,第一部分显示为灰色,最后一部分显示为红色。

现在,这在我的代码中提供了许多问题,因为与那些导入语句相关的任何内容都显示为红色,并且将鼠标悬停在其上时,出现消息“无法解析符号____”

这就是问题所在-我的应用仍然可以编译并在手机上打开后运行。

我想我的主要问题是令人烦恼的是,自动导入也不起作用。(我已在设置中选中“显示导入弹出窗口”,这是我为其他人遇到的自动导入问题无法解决的答案)。我的另一个担心是,这将使我的应用不符合在Play商店中发布的资格。我仍在研究发布过程,所以我不知道这是否确实是一个问题。

我的问题(如果没有人解决此问题的答案)是:这是IDE本身还是代码问题?

编辑:添加了其他导入语句

java import android android-studio

7
推荐指数
2
解决办法
4066
查看次数

Android Studio - "无法解析符号"语法突出显示错误,尽管构建正常

在获得一台新计算机后,我尝试从备份中恢复以前正在运行的Android Studio项目几天后,我有一个非常讨厌的问题.

我有"不能解析符号"语法高亮的问题与Android的库如类android.support.v7.app,android.support.v4.app和谷歌播放服务,这是我列为依赖关系.但是,该项目构建良好,我可以在手机上运行应用程序没有问题.

我已经验证了SDK安装下是否存在这些jar文件 - 例如"\ sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.0.1".

我的问题非常类似于以下帖子中报道的问题:

  1. Android Studio说"无法解析符号",但项目编译
  2. Android Studio无法解析符号,但代码正确执行
  3. Android Studio突然无法解析符号

我已经尝试了各种stackoverflow讨论中提供的所有解决方案(即同步Gradle项目,无效缓存/重启,清理/重建,删除gradle生成的文件(.gradle,build,.idea目录等),降级到较低的API和升级等但是,没有方法是有帮助的.

我使用Android Studio 1.3.2和API 23.所有构建工具,支持库等都是最新的(尝试使用v22.+和v23.+库).

如果您有任何其他建议,请帮忙!

从我的build.gradle中提取:

apply plugin: 'com.android.application'
android {
        compileSdkVersion 22
        buildToolsVersion '23.0.1'

defaultConfig {
    applicationId "com.myapp.fun"
    minSdkVersion 22
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:support-v4:22.+'
    compile 'com.android.support:appcompat-v7:22.+'
}
Run Code Online (Sandbox Code Playgroud)

问题的屏幕截图也可以在下面找到.我认为Android Studio无法导入依赖库以进行语法突出显示,尽管编译器能够包含它们并成功构建.

截图:语法高亮和自动完成问题

java android intellij-idea android-studio android-gradle-plugin

6
推荐指数
1
解决办法
3103
查看次数

Android Studio 3.1稳定.构建成功但无法解决错误

Android Studio今天(2018年3月27日)已更新至3.1稳定版.

我有一个旧项目.使用新的工作室版本,它可以构建成功并安装应用程序Emulator,但是IDE,活动文件显示

无法解析器错误

. 在此输入图像描述

gradle文件app模块

在此输入图像描述

项目级gradle文件

在此输入图像描述

android android-studio android-studio-3.1

6
推荐指数
2
解决办法
1926
查看次数

Android Studio说"无法解析方法"但方法存在并编译

我正在尝试调试Android Studio关于java SDK文件夹中文件的语法突出显示和定义的行为.该项目构建正常,但Android Studio本身在编辑器中不会与此一致.

我已经详细阅读了以下链接中的响应,并没有解决问题: Android Studio说"无法解析符号"但项目编译

我已经尝试了所有这些解决方案,包括"无效和重新启动",清理,重建,检查sdk目录是否正确,检查所有依赖项是否存在,重新同步gradle,将compileSdkVersion更改为minSdkVersion,它仍然拒绝遵循预期行为.

Android工作室突出显示了一些红色的方法和符号,当我按下它们的CTRL + B时​​,它们不会跟随它们(转到定义).但是,当我只是打开文件时,方法和符号就可以了.

例如,对于sdk\sources\android-14\...在RingtonePreference类中...android\preference\RingtonePreference.java,有一行:

PreferenceFragment owningFragment = getPreferenceManager().getFragment();
Run Code Online (Sandbox Code Playgroud)

该方法getFragment()以红色突出显示"无法解析方法".

然后我点击CTRL + B getPreferenceManager(),跳转到:

public PreferenceManager getPreferenceManager() {
    return mPreferenceManager;
}
Run Code Online (Sandbox Code Playgroud)

然后我按下CTRL + B PreferenceManager,跳转到文件...android\preference\PreferenceManager.java.在该文件中有以下内容:

PreferenceFragment getFragment() {
    return mFragment;
}
Run Code Online (Sandbox Code Playgroud)

除了我之外,Android Studio需要按照预期运行.我在这做错了什么?

作为参考,这是我的项目使用RingtoneManager的方式,但是没有"无法解决"Android Studio红色高亮显示:

import android.content.Context;
import android.content.Intent;
import android.media.RingtoneManager;
import android.net.Uri;
import android.preference.RingtonePreference;
import android.util.AttributeSet;

public class ExtRingtonePreference extends RingtonePreference {
private String mInitialRingtone;

public ExtRingtonePreference(Context context, AttributeSet attrs, int defStyleAttr) …
Run Code Online (Sandbox Code Playgroud)

java android

5
推荐指数
1
解决办法
1742
查看次数

Android项目编译,但Android Studio中无法识别maven依赖项

我在Gradle依赖项中将Google Play服务添加到了我的Android项目中.

dependencies {
    compile 'com.google.android.gms:play-services:4.1.32'
}
Run Code Online (Sandbox Code Playgroud)

问题是Android Studio无法识别此依赖项.我尝试使用gradle文件同步项目,但仍然找不到类.

我可以从Google Play服务手动导入一些类,并在我的代码中使用它们,它将编译没有任何问题.

如果我从maven下载导入jar文件arr一切正常.

我尝试了几个库,它总是一样的.我使用的是Android Studio 0.4.2.

android gradle android-studio

4
推荐指数
2
解决办法
3346
查看次数

Android Studio,无法导入任何内容

我不知道发生了什么。我正在使用 Android Studio,并且创建了一个新的空白项目。

我输入 import an 并且Annotation如果我尝试编辑现有的 4 个导入,它会显示唯一的内容,它会变为红色,然后将所有内容切换回那 4 个。

导入 android.os.Bundle;
导入 android.support.v7.app.ActionBarActivity;
导入 android.view.Menu;
导入 android.view.MenuItem;

我不知道发生了什么。

在此处输入图片说明

android android-studio

2
推荐指数
1
解决办法
5585
查看次数

Android Studio无法解析AAR中的符号

我的问题与在其他项目中使用.AAR文件的问题有同样的问题.但我想补充更多细节.因此,新的问题.

我也知道这个Android Studio的解决方案无法解析导入的AAR模块中的符号,但答案并不是我想要的.

我可以将我的AAR文件添加到我的项目中,无需将其添加到libs /文件夹中或添加为新的AAR模块.当AAR作者提供更新的AAR时会出现问题(因为他们在公共API中更改了某些内容,即在其中一种旧方法中添加新参数).

Android Studio似乎无法接收更改.在旧库中,我有这个方法调用:

library.showText("hello");
Run Code Online (Sandbox Code Playgroud)

作者发布了一个新API,并对同一方法进行了更新,应该被称为:

library.showText("hello", 5000); // added timeout param
Run Code Online (Sandbox Code Playgroud)

当我按CTRL +单击该方法时,它将我带到具有位于C:\ Users\MyUser\.gradle\caches\transforms-1\files-1.1\library.aar\...\old中的方法的旧类.类.我认为这是为什么我得到"无法解决符号"错误的问题.

我该如何解决?

android android-studio aar

2
推荐指数
1
解决办法
3186
查看次数