Android Studio创建项目报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio创建项目报错相关的知识,希望对你有一定的参考价值。

新上手as,新建空白项目后,as自动生成的AppCompatActivity不能被识别,添加jar包时也会报错,具体情况如下图,请问是什么问题,如何解决。

参考技术A 是不是Gradle没有Build完啊,或是Build失败追问

显示的是Gradle bulid finished with 94 errors,应该不是build的问题

追答

clean下项目,看看行不行。要不就是build.gradle的问题。(重新新建项目还报错?)

追问

clean和重建都试过了,然并卵,识别不了AppCompatActivity和R

参考技术B 你看看包是不是导错了,有V7包么? 参考技术C 一、修改android Studio(以下简称AS)的内存配置
因为在导入源码时需要消耗大量内存,所以先修改IDEA_HOME/bin/studio64.vmoptions(x86的机器修改studio.vmoptions)中-Xms和-Xmx的值。文档中使用的是748m, 可自行修改。
二、配置AS的JDK、SDK
在IDE中添加一个没有classpath的JDK, 这样可以确保使用源码里的库文件
并将其作为要使用的SDK的Java SDK。
三、生成导入AS所需配置文件(*.ipr)
①编译源码(为了确保生成了.java文件,如R.java;如果编译过,则无需再次编译)
②检查out/host/linux-x86/framework/目录下是否有idegen.jar
如果idegen.jar不存在,执行:
mmm development/tools/idegen/
在5.0.1的源码中会生成res.java的文件夹,导致idegen.jar运行时抛FileNotFoundException,这是idegen的代码不够严谨造成的。
我的分享里有修改这个bug的patch,或者直接使用我分享的idegen.jar。
③执行
development/tools/idegen/idegen.sh
等待出现类似下面的结果:
Read excludes: 5ms
Traversed tree: 44078ms
这时会在源码的根目录下生成android.ipr和android.iml两个IntelliJ IDEA(AS是基于IntelliJ IDEA社区版开发的)的配置文件
Tips:
AS在导入代码时比较慢,建议先修改android.iml,将自己用不到的代码exclude出去.可以仿照过滤.repo文件夹的语法,如:
<excludeFolder url="file://$MODULE_DIR$/.repo" />
<excludeFolder url="file://$MODULE_DIR$/abi" />
<excludeFolder url="file://$MODULE_DIR$/art" />
删除掉所有不需要的module-library项
这样在导入时就会跳过abi和art文件夹.过滤的越多,AS的处理速度就会越快.
④在AS中打开源码根目录下新生成的android.ipr
如果在导入时AS出现
则建议按照其给定的解决方法来解决(网址:http://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit)
四、解决源码中跳转错误问题
①为当前工程设置正确的SDK和JDK
②设置'Modules'的依赖
先将所有依赖删掉(注意:这里删除全部只是为了方便。如果确实用到了.jar,在将它们的路径添加进来就可以了.
如:5.0.1的ContactsCommon用到了geocoder-2.9.jar和libphonenumber-6.2.jar)
点击指向的'Jars or directories'选项,依次将frameworks和external文件夹添加进来.如:
注:推荐把frameworks和external这两个移到最上面,这样在代码跳转时会优先从这两个文件夹下查找,而不是在Android.jar中查找。
其它版本的代码在添加frameworks时可能会显示成:
没有关系,只是显示问题,点击OK还是会把frameworks路径添加进去的.
如果还有代码跳转错误,请仿照上面的步骤将相应代码的路径或jar文件添加到其Dependencies标签页中即可.
五、DEBUG源码
可以通过给刚导入的工程在'Modules'中添加'Android Framework'来让AS将它作为一个Android工程,从而方便调试代码.
可以来添加Android Framework支持.
在代码中加断点,然后选择'Run'->'Attach debugger to Android process'
在弹出的选择进程(Choose Process)对话框中,勾选显示所有进程,选择要DEBUG的代码所在的进程,点击OK即可.
六、其它
代码中很多地方提示Call requires API Level x.... 出现这个问题是因为AS将工程当做安卓应用程序工程了,且源码中没有指定minSdkVersion.
只需在源码根目录加一个声明minSdkVersion的AndroidManifest.xml文件即可(分享了一个AndroidManifest.xml)。
也可以考虑使用build.gradle来解决该问题。

Android studio 报错问题

错误:找不到符号
错误:mainTab01无法转换context

参考技术A 首先查看项目中是否有build.gradle文件,如果没有的话,先创建一个项目,把创建的项目中build.gradle复制到错误的项目中去,编译,如果还是报错,那就有可能是xml文件出现了错误,我们接下来就是查看xml有没有报错的,然后再 编译,修改其他报错的地方

注意复制的build.gradle不是工程中的,而是项目中的,复制的时候一定要注意,因为在项目和工程中都有build.gradle

文件夹,复制其中编译通过的一个项目中的build.gradle到错误的项目中去就行了,复制过去还有可能报其他的错误,
参考技术B 可能程序不兼容, 可以更换个版本试试。另外建议参考下程序对配置的要求。
或者右键需要运行的程序 选择兼容性 用兼容模式运行试试。

台式机(AMD平台)性能如何优化

¥2.99

电脑调修-专家1对1远程在线服务

¥38

路由器的选购、设置与进阶玩法

¥39

一看就会的RAID实用教程

¥29.9

小白必看的硬盘知识

¥9.9

    官方服务
      官方网站
参考技术C Context是小巧、快速、功能强大的文本编辑工具,特别适合于开发者进行源码编辑。在文本编辑功能方面基本可以替代UltraEdit,有些方面如编译器的调用等甚至更加强大。支持语法高亮、UTF-8、宏,并且可以方便调用命令行程序且智能分析返回信息,轻松定制成为一个功能齐全的IDE开发环境。不过很可惜的是,作者似乎停止了新版本的开发,不过目前版本已经非常出色,绝对值得一试。

结构体struct CONTEXT

常见寄存器都在这个列表中了, 包括调试寄存器和段寄存器。

python定义为:

class CONTEXT(Structure):

_fields_ = [

("ContextFlags", DWORD),

("Dr0", DWORD),

("Dr1", DWORD),

("Dr2", DWORD),

("Dr3", DWORD),

("Dr6", DWORD),

("Dr7", DWORD),

("FloatSave", FLOATING_SAVE_AREA),

("SegGs", DWORD),

("SegFs", DWORD),

("SegEs", DWORD),

("SegDs", DWORD),

("Edi", DWORD),

("Esi", DWORD),

("Ebx", DWORD),

("Edx", DWORD),

("Ecx", DWORD),

("Eax", DWORD),

("Ebp", DWORD),

("Eip", DWORD),

("SegCs", DWORD),

("EFlags", DWORD),

("Esp", DWORD),

("SegSs", DWORD),

("ExtendedRegisters", BYTE * 512),

]
参考技术D MainTab01 没有实现context接口 所以没有context 看看有没有getActivity 或者 getContext方法,用这个方法获取的context 进行其他操作。使用Intent第一个参数必须是Context,我看你代码mainTab01不知道是个啥,是Fragment还是一个控件?如果是Fragment的话用mainTab01.getContext() 第5个回答  2019-01-01 点击AndroidStudio菜单File -> Invalidate Caches/Restar… ,在弹出的对话框中点击Invalidate and Restar
。等待AS清理并自动重启

以上是关于Android Studio创建项目报错的主要内容,如果未能解决你的问题,请参考以下文章

高版本Android Studio打开低版本创建的安卓项目报错:Invalid keystore format

用Eclipse创建android项目后src报错,怎么解决?

MAC上运行Android studio2.3 刚创建一个项目下面就报错了

Android Studio 新项目无法运行,报错

Android studio 创建安卓项目hello

android在myeclipse上创建的项目各种报错