1.appcompact类错误
当导入一个新的项目进去studio的时候,studio报一下错误:
这个时候,在studio中的Message界面可以看到一些报错信息,大意是需要我们打开SDKManager,
并且关闭studio,单独跟新下载Android support repository,这个下载是很慢的,需要搭好梯子,
这个速度大家都是知道的.
正确的解决办法是:检查各项目和app下面的build.gradle文件,检查一下compileSdkVersion
和dependencies 中的compile 'com.android.support:appcompat-v7:23.1.0'
中的版本
是否相同,比如compileSdkVersion为23,appcompat-v7也要是23,即要是设置为:23.1.0.
2.系统找不到指定文件错误
当系统出问题,或者电脑进行过还原等会影响C盘的操作的时候,android studio在C盘的一些
配置文件会丢失,或者临时文件会丢失或损坏,所以找到对应的地方,将出问题的文件删除
然后打开android studio重新build就可以了。
3.gradle版本不同问题
如下图所示:
解决办法:直接点击下方提示的Fix……就可以了!
4.导入第三方java库问题
这里以ZXing的导入问题为例说明一下.ZXing是一个比较复杂的一个开源框架,在使用的时候一般
需要精简一下,所以一般我们使用的都是精简包,当我们使用一个Demo的时候,想把这个功能移植到我们
的项目中的时候,就可以直接将ZXing包当成一个Moudle直接导入到当前工程当中.
导入的时候要注意
①gradle版本的差异性.
如果长时间build不过去,可以先stop一下,注意看控制台的报错信息,如果说找不到gradle版本的话
就切换其他版本的gradle.
②build.gradle的版本差异.要将ZXing的gradle版本和其他开源框架和app下的gradle保持一致.包括以下:
compileSdkVersion 22
targetSdkVersion 22
buildToolsVersion '22.0.1'
还有以下信息也要保持一致:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:22.1.0'
compile 'com.android.support:support-v4:22.1.0'
compile 'com.android.support:design:22.2.0'
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
③使用java开源库里面的文件
若要在自己的工程中使用一个activity文件,使用的时候,会报找不到这个文件的错误,这个时候可以按
alt+enter选择add dependency到’ZXing’,自动build完成之后就可以引用了.
5.svn相关问题
Cannot run program “svn” (in directory ““`”): CreateProcess error=2, 系统找不到指定的文件。
原因分析:
SVN使用了命令行工具,如果本地没有SVN的命令行工具,则导致出错。
解决办法
安装TortoiseSVN客户端时,必须选中command line client tools这个选项。如下图所示:
这样就可以解决这个问题了.
6.Plugin with id ‘com.android.application’ not found.
7.Error:(3) Error retrieving parent for item: No resource found that matches the given name ‘android:TextAppearance.Materi
此类错误一般因为所引用资源为高版本所有
解决方法:
项目-》 property->android 选择较高版本
这些也要同步更改为23: compileSdkVersion 23
buildToolsVersion '23.0.3'
targetSdkVersion 23dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:design:23.1.1'
}
另外说一下这个design包的作用:
com.Android.support:design:23.1.1支持的新控件。
android.support.design.widget.TextInputLayout 强大带提示的MD风格的EditText
android.support.design.widget.FloatingActionButton MD风格的圆形按钮,来自于ImageView
android.support.design.widget.Snackbar 类似Toast,添加了简单的单个Action
android.support.design.widget.TabLayout 选项卡
android.support.design.widget.NavigationView DrawerLayout的SlideMenu
android.support.design.widget.CoordinatorLayout 超级FrameLayout
android.support.design.widget.AppBarLayout MD风格的滑动Layout
android.support.design.widget.CollapsingToolbarLayout 可折叠MD风格ToolbarLayout
8.import org.apache.http.util.EncodingUtils问题
错误提示:出现的问题是:
Cant resolve symbol ‘EncodingUtils’ 提示是:错误:程序包org.apache.http.util不存在 错误:找不到符号 符号:变量 EncodingUtils
注:某些输入文件使用或覆盖了已过时的API
解决办法:
EncodingUtils是 HttpCore里面的,你的build.gradle里面没有依赖这个包,解决办法是在build.gradle文件里面的依赖关系里面填写下面这一句话,并sync Now即可 :
compile 'org.apache.httpcomponents:httpcore:4.4.4‘
这个类一般用以读取文件,访问网络,webview的使用的时候会出现.可以参考一下下面的文章:
webview的使用
String postData = “login_id=13810977186&amt=123”;
byte[] postBys=EncodingUtils.getBytes(postData, “base64”);
webview.postUrl(“http://192.168.1.17:8097/Lemon/fuyou/netSave2.do“, postBys);
9.setLatestEventInfo方法在高版本中报错问题:
参考Notification的使用方法:
在线文档
10.Error:(65, 1) A problem occurred evaluating project ‘:android-volley-master’.
Could not read script ‘https://raw.github.com/mcxiaoke/gradle-mvn-push/master/jar.gradle‘.
Connection timed out: connect
原因:链接超时了
解决办法:使用VPN链接,如果还是不行的话,重启再多试几次就可以了,这个应该是studio 2.0之后的bug.简单的方法就是,将https改成http就可以了.
11.导入Moudle形式的类库的方法
导入一个moudle并不是选择其下面的buil.gradle文件,而是选择整个moudle导入工程中,这样就ok了,编译的
时候,使用下面的类似语句编译就可以了:
compile project(':MPChartLib')
- 1
- 1
另外,不能直接从一个工程的文件夹中拷贝过来到另一个工程文件夹中,也不能直接从工程中复制粘贴,
使用new—import是最好的方法.
12.gradle离线导入方法:
1.把下载下来的 zip 文件复制到 C:\Documents and Settings\Administrator.gradle\wrapper\dists\gradle-1.7-bin\2g3i7gan25uopmtc0lnjb1l9ff 目录下。
2.把 zip 文件直接解压到当前目录。
3.分别创建 gradle-1.7-bin.zip.lck 和 gradle-1.7-bin.zip.ok 两个文件。
4.重启你的 Android Studio 工程。
13.SDk location not found.
Error:SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
缺少一个local.properties
文件,可以在这个空间中拷贝一个其他可以运行的项目的这个文件到
这个项目中,就可以运行了.
还有一个原因就是导入一个开源项目的时候,直接导入了其中的Demo,但是缺少文件,这个时候,可以打开 settings.gradle
,将其中的内容: include ':demo', ':library'
添加为: include ':demo', ':library',':app'
这样应该就是可以运行的了.