【安卓学习之开发工具】 Android Studio学习 2 - 遇到的问题

█ 【安卓学习之开发工具】 Android Studio学习 2 - 遇到的问题

█ 相关文章:

- 
 ● 【安卓学习之开发工具】 Android Studio学习 1 - 入门篇
 ● 【安卓学习之开发工具】 Android Studio学习 2 - 遇到的问题
 ● 【安卓学习之开发工具】 Android Studio学习 3 - 一个demo的编译问题
 ● 【安卓学习之开发工具】 Android Studio学习 4 - 学习笔记(视频学习)
 ● 【安卓学习之开发工具】 Android Studio学习 5 - 研究android studio和eclipse之间的互换
 ● 【安卓学习之开发工具】 Android Studio学习 6 - Android Studio 2.0/3.0 安装包说明(版本说明) 
 ● 【安卓学习之开发工具】如何导入已别人写好的demo(含ADT和AS)之ADT

█ 读前说明:

- 
 ● 本文通过学习别人写demo,学习一些课件,参考一些博客,’学习相关知识,如果涉及侵权请告知
 ● 本文只简单罗列相关的代码实现过程
 ● 涉及到的逻辑以及说明也只是简单介绍,主要当做笔记,了解过程而已

█ 导读:

刚研究Android Studio,常常都是将Eclipse的项目导入到Android Studio中,在这个过程中,常常会遇到一些问题,在这里做一个笔记记录:

  1. 首次运行提示Unable to access Android SDK add-on list问题

比较特殊,安装android studio时,我选择SDK的安装目录是【D:\Users\Android\sdk】,结果安装完成后,在这【D:\Users\Android\sdk】路径下安装了个API 25 (Android 7.1.1 API) (build-tools\25.0.2和platforms\android-25),在这【C:\Users\Administrator\AppData\Local\Android\Sdk】路径(默认路径)下安装了个API 28 (Android 9.0 API) (build-tools\28.0.1和platforms\android-28),就是同时给我安装了两个sdk,默认还是指向了默认的路径【C:\Users\Administrator\AppData\Local\Android\Sdk】。
这里写图片描述

Can’t use Subversion command line client: svn Probably the path to Subversion executable is wrong. Fix it.
这里写图片描述

  1. 安装Android Studio问题

刚开始,我下载了一个android studio 2.3 Canary2(android-studio-ide-162.3508619-windows.zip)版本的,直接使用Eclipse(ADT)的SDK,也就是说Eclipse和android studio共享一个sdk,当然工作空间是要分开的。结果发现这个版本的部分问题,或者是我下载的问题吧!
 ● JDK路径不能设置,只要设置后,就自动恢复成默认的
 这里写图片描述
 ● 印象中,好像想要创建Java Class,在New中找不到该选项。
 ● 新建的项目,运行出现如下错误,一直解决不了:
 这里写图片描述

PS : 应该是下载的资源包有问题,后来删除掉,下载了1.6G的android studio 2.2.2版本(【android-studio-bundle-145.3360264-windows.exe】)就解决了这个问题。

PS2 : SDK路径不能设置,是因为路径不能包含空格等特殊字符导致的,就是路径的格式不对!(20180729补充)
   
这里写图片描述

  1. styles.xml编译错误

我的Eclipse项目,因此导入进来的时候错误比较多,比如:
这里写图片描述
 ● 遇到问题:

E:\workspace_2\Test_Android2016\app\src\main\res\values\styles.xml
Error: Found item Style/AppTheme more than one time

styles.xml的代码如下:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="AppTheme" parent="android:style/Theme.NoTitleBar" />
	......  
    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <item name="android:windowAnimationStyle">@style/inout</item>
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    </style>
	......
</resources>

● 解决方法:

很明显,是说AppTheme的名字重复定义了,不过不知道为什么以前在Eclipse打开时,没有这个错误的报警!
 

4.styles.xml编译错误2

这个也是Eclipse项目,不过带有类库,如PullToReflesh_Lib之类,在导入进来的时候出现如下错误:
这里写图片描述
 ● 遇到问题:

Attribute application@name 
value=(com.XXX.activity.base.MyTestApplication) 
from AndroidManifest.xml:52:9-75
	is also present at
[Test_Android2016_2:MyTesy_Lib:unspecified] 
	AndroidManifest.xml:52:9-62 
	value=(com.XXXXXX.activity.TheApplication).
	Suggestion: add 'tools:replace="android:name"' to <application> element at AndroidManifest.xml:51:5-442:19 to override.

● 解决方法:

这个问题就是,相关资料1中的【Android Studio使用心得 - 常见问题集锦】中的出现的问题1,可以按照它里面介绍的方法, 当然如果是【android:theme="@style/AppTheme" 】的问题,还可以直接将AppTheme修改下名字即可。 这里给出一种解决方案,供参考:
  ![这里写图片描述](https://img-blog.csdnimg.cn/img_convert/c50f528f5ccb2f3c91a84e05223a43da.png)

5.PNG编译错误1

这里写图片描述
 ● 遇到问题:

AAPT err(Facade for 2007584281):ERROR: 9-patch image E:\workspace_2\com333\gviews\src\main\res\drawable-hdpi\ic_test.9.png malformed.

● 解决方法:

该错误表示项目中的drawable下的ic_test.9.png图片文件不是.9.png 格式的图片。 将ic_test.9.png 名字修改为 ic_test.png
  6.PNG编译错误2 - ![这里写图片描述](https://img-blog.csdnimg.cn/img_convert/873432d41ffdb2dcbd9eac50beded5df.png)  ● 遇到问题: ``` AAPT err(Facade for 155972635):libpng error: Not a PNG file ```  ● 解决方法:
该错误表示项目中的drawable下的图片文件有非png图片,命名为了png造成的。可以修改下图片的正确格式,或者如下操作: 在工程的build.gradle里加入 aaptOptions.cruncherEnabled = false 或者 aaptOptions { cruncherEnabled = false }
  7.字符编译错误 - ![这里写图片描述](https://img-blog.csdnimg.cn/img_convert/1aa233c7b11906d0f64027458d011c8c.png)  ● 遇到问题: ``` Error:(1, 1) 错误: 非法字符: '\ufeff' Error:(1, 10) 错误: 需要class, interface或enum Error:Execution failed for task ':gviews:compileDebugJavaWithJavac'. > Compilation failed; see the compiler error output for details. ```  ● 解决方法:
该错误表示项目中的src下的java文件的编码格式不对,修改为UTF-8无BOM格式编码即可,可以通过工具转换,或者将旧的删除,再新建java文件。
 

PS :Eclipse可以智能的把有BOM文件转为无BOM文件,目前AndoridStudio木有这个功能,各位筒子需手动完成。

8.找不到类编译错误

这里写图片描述
 ● 遇到问题:

Error:(31, 34) 错误: 程序包android.support.annotation不存在
Error:(59, 5) 错误: 找不到符号
符号:   类 Nullable
位置: 类 AADeviceFrag
Error:(59, 36) 错误: 找不到符号
符号:   类 Nullable
位置: 类 AADeviceFrag

错误: 程序包android.support.annotation不存在
import android.support.annotation.Nullable;

● 解决方法:

该错误表示项目中的src下的java文件中的引用找不到的问题,恰好涉及到注解方面。 只需要在工程的build.gradle里引入库的声明: dependencies { compile 'com.android.support:support-annotations:21.0.2' }
  ![这里写图片描述](https://img-blog.csdnimg.cn/img_convert/cff6dd8158ac416100f82f1a8ae48f0f.png)

9.找不到类编译错误

这里写图片描述
 ● 遇到问题:

The method getAlpha() of type TargetDrawable.
DrawableWithAlpha must override or implement a supertype method.
错误: 方法不会覆盖或实现超类型的方法
警告: 最后一个参数使用了不准确的变量类型的 varargs 方法的非 varargs 调用; 

● 解决方法:

解决方法有两种,一种直接将【@Override】去掉。
  ![这里写图片描述](https://img-blog.csdnimg.cn/img_convert/475e5ed5e24eab3fd66136418de90467.png)

PS :以前在Eclipse中遇到过类似的,可以通过设置Windows->Preferences–>java->Compiler–>compiler compliance level设置成1.6解决,不过这次不是jdk的版本导致的,所以只能去掉【@Override】。

10.这个mockable-android-24.jar文件做什么的?

细心的人会发现,在每个工程都有\build\generated\mockable-android-24.jar文件(31.9M),他是用来做什么?
这里写图片描述
用来做单元测试用的,而且不能不同工程共用的。而且有些人压根没用到,
 
Android Studio可以直接关闭该功能,方法如下:打开设置,进入到Experimental,把第三个选项的勾选取消掉就可以了,之后再clean就可以删除该文件了
这里写图片描述

不过我再使用android studio 3.0.1的时候,没有发现该设置,如下:
这里写图片描述

对比三个工程,分别是,
这里写图片描述
 ● WeiMenu:(2017-08-22在AS2.2.2创建的工程)
android studio 2.2.2开发
gradle程序版本 2.14.1
compileSdkVersion 24
buildToolsVersion “24.0.3”
sdk.dir=D:\AndroidStudio2.2.2\sdk
classpath ‘com.android.tools.build:gradle:2.2.2’
distributionUrl=https://services.gradle.org/distributions/gradle-2.14.1-all.zip
 ● Demo-master:(2018-04-24网上下载更改后的工程)
android studio 3.0.1开发
gradle程序版本 3.3
compileSdkVersion 26
buildToolsVersion ‘26.0.2’
sdk.dir=D:\AndroidStudio3.0.1\sdk
classpath 'com.android.tools.build:gradle:2.3.1
distributionUrl=https://services.gradle.org/distributions/gradle-3.3-all.zip
 ● MyApplication:(2018-08-06在AS3.0.1创建的工程)
android studio 3.0.1开发
gradle程序版本 4.1
compileSdkVersion 26
buildToolsVersion ‘26.0.2’
sdk.dir=D:\AndroidStudio3.0.1\sdk
classpath ‘com.android.tools.build:gradle:3.0.1’
distributionUrl=https://services.gradle.org/distributions/gradle-4.1-all.zip

PS :如果你用android 8.0 就变成是mockable-android-26.jar(24.3M)了

█ 相关资料:

  1. Manifest merger failed with multiple errors, see logs

● Android Studio使用心得 - 常见问题集锦
  
2. AAPT err(Facade for): libpng error: Not a PNG file 错误解决

● AAPT err(Facade for): libpng error: Not a PNG file 错误解决
 ● AAPT: libpng error: Not a PNG file 问题解决
 
3.Andoird Studio 错误: 非法字符: ‘\ufeff’ 解决方案。

● Andoird Studio 错误: 非法字符: ‘\ufeff’ 解决方案
 ● AndroidStudio非法字符: '\ufeff’解决

4.javax.annotation.Nullable找不到

● Android工程中javax.annotation.Nullable找不到的替代方案
 ● Android注解支持(Support Annotations)

4.mockable-android-24.jar文件

● 2016-08-23 Android Studio工程项目减肥 - 张文文 - 简书
 ● 2016-08-20 为什么 Android Studio 工程文件夹占用空间这么大?我们来给它减减肥 - 成宇佳 - 博客园
  
转载请注明出处:http://blog.csdn.net/ljb568838953/article/details/53582072

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值