1.Android studio下载链接地址(无需翻墙):包括先行版和正式版(推荐使用正式版bug少)

http://www.androiddevtools.cn/

2.第一次安装避免成功先不要急着打开应用,先取消打开。到安装文件夹下/bin/idea.properties文件打开在最后面加入

disable.android.first.run=true  并后面多一行回车就可以。再又一次打开AS就可以避免第一次去联网请求更新

3.导入eclipse项目:比如本人须要导入D:\workspace\eclipse\test一个test项目方式

选择须要导入的项目:(要是有依赖jar也是直接选中导入主项目就可以)。点击OK进入下一步

选择存放的project项目文件夹位置:

下一步:默认就可以

finish就可以完毕导入,是不是so easy!

导入成功后:须要类似eclipse视图方式须要切换

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

选择project就可以

看到手机图标么有,这就说明你项目能够正常执行了

以下解说下关于gradle编译相关出错地方和怎么选择你自己本地的gradle编译版本号

首先:普通情况下都要将gradle设置为离线不去更新。这可能涉及到须要翻墙去寻找就会导致项目卡住在那里一直编译;改动例如以下设置

1.点击扳手图标---setting

搜索gradle按例如以下设置

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

怎样选择本地gradle:上面图的第一个红圈选项既是选择本地gradle点击后面的...弹出框选择AS安装文件夹下/gradle对应版本号就可以如图

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.关于导入别人项目导致本地的gradle与其不一致无法编译通过(也就是编译报错问题)解决

首先:须要改动编译gradle下的压缩包路径。查看本地版本号方式:D:\Program\android-studio\gradle

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

3.关于项目总体gradle编译工具版本号改动,查看方式:D:\Program\android-studio\gradle\m2repository\com\android\tools\build\gradle

相应项目中的版本号:注意是最外层gradle

4.对于单个项目或者jar依赖包的节点下的各个gradle创建工具版本,查看方式:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

基本改动完这些项目都是能够正常执行了!!

下面为开发过程的其它AS报错的整理:

1.出现非法字符:将全部报错的文件找到该文件将其格式设置为UTF-8无BOM

如:

D:\workspace\studiojob\DadaDriver\dadaDriver\src\main\java\com\newdadadriver\utils\ChannelUtil.java

Error:(1, 1) 错误: 非法字符: \65279

Error:(1, 10) 错误: 须要class, interface或enum

2.Project Sync

         The project 'DadaDriver' is not a Gradle-based project

         More Information about migrating to Gradle

  gradle源文件缺失问题;又一次importproject就可以

3.AssertionError: platform-tools doesn't match platform-tools-preview

编译问题;刷新就可以

4.最低版本号报错:更改更高版本号号 

     Error:(5, 5) uses-sdk:minSdkVersion 5 cannot be smaller than version 8 declared in library 

D:\workspace\studiojob\DadaDriver\slidingMenu_library\build\intermediates\exploded-aar\DadaDriver\androidSupportLib\unspecified\AndroidManifest.xml

5.执行项目出现:按提示加入对应的代码到build.gradle的Android下就可以

Error:duplicate files during packaging of APK D:\workspace\studiojob\DadaDriver\dadaDriver\build\outputs\apk\dadaDriver-debug-unaligned.apk

Path in archive: META-INF/LICENSE.txt

Origin 1: D:\workspace\studiojob\DadaDriver\dadaDriver\libs\httpmime-4.2.4.jar

Origin 2: D:\workspace\studiojob\DadaDriver\dadaDriver\libs\fastjson.jar

You can ignore those files in your build.gradle:

android {

  packagingOptions {

  exclude 'META-INF/LICENSE.txt'

            exclude 'META-INF/NOTICE.txt'

  }

}

6.模拟器出现空白。无法正常显示。原因:没有相应能够显示布局版本号。调低就可以org.jetbrains.android.uipreview.RenderingException:Failed to load the LayoutLib: com/android/layoutlib/bridge/Bridge : Unsupportedmajor.minor version 52.0

at org.jetbrains.android.uipreview.LayoutLibraryLoader.load(LayoutLibraryLoader.java:90)

atorg.jetbrains.android.sdk.AndroidTargetData.getLayoutLibrary(AndroidTargetData.java:180)

atcom.android.tools.idea.rendering.RenderService.createTask(RenderService.java:164)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

以上是本人临时遇到整理的问题。兴许有发现其它还会加入。

7. Apk的签名混淆打包

7-1. 创建签名文件keystore

7-2. 签名apk

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

能够代码直接在build.gradle里面编写

android {
signingConfigs {// 签名
config {
keyAlias 'test'
keyPassword '123456'
storeFile file('H:/zhou/keystore.jks')
storePassword '123456'
}
}
compileSdkVersion 24
buildToolsVersion "24.0.1"
defaultConfig {
applicationId "com.vsoontech.p2p.sample"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
//运行lint检查,有不论什么的错误或者警告提示。都会终止构建
lintOptions {
abortOnError false
}
buildTypes {
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
release {
minifyEnabled true // 混淆
zipAlignEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.config // 使用签名
}
}
productFlavors {
}
}

7-2. 混淆

仅仅要是proguard-rules.pro文件配置


# 指定代码的压缩级别
-optimizationpasses 5 # 包名不混合大写和小写
-dontusemixedcaseclassnames # 不去忽略非公共的库类
-dontskipnonpubliclibraryclasses # 优化 不优化输入的类文件
-dontoptimize # 预校验
-dontpreverify # 混淆时是否记录日志
-verbose # 混淆时所採用的算法
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # 保护注解
-keepattributes *Annotation* # 保持哪些类不被混淆
-keep class com.vsoontech.p2p.** {*;}
-keep class com.linkin.base.** {*;} # 假设有引用v4包能够加入以下这行
-keep public class * extends android.support.v4.app.Fragment # 忽略警告
-ignorewarning # 假设引用了v4或者v7包
-dontwarn android.support.** # 保持 native 方法不被混淆
-keepclasseswithmembernames class * {
native <methods>;
} # 保持自己定义控件类不被混淆
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
} # 保持 Parcelable 不被混淆
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
} # 保持枚举 enum 类不被混淆
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}


(原创)开发使用Android studio所遇到的一些问题总结的更多相关文章

  1. linux安装安卓开发工具android studio

    http://www.android-studio.org/ http://android-studio.org/index.php/docs/guide 最近要接触android编程,本来想装ecl ...

  2. NDK开发-Android Studio+gradle-experimental开发ndk

    在最新的Android Studio2.2的preview版中,增加全新的ndk支持,使用了新的gradle,以及DSL语言. 新的NDK需要使用新的Gradle插件和新的Android插件来支持! ...

  3. 第一次作业---安卓开发工具Android studio发展演变

    Android studio2013年由谷歌推出,用于安卓端的开发,我所使用的版本为2015年5月推出的1.3.2. 1.安装.配置.作为麻瓜的我,刚刚接触Android studio时在安装方面走了 ...

  4. 简单的调用OpenCV库的Android NDK开发 工具Android Studio

    前言 本博客写于2017/08/11, 博主非专业搞安卓开发, 只是工作的需要倒腾了下Android NDK相关的开发, 博文中有什么不正确.不严格的地方欢迎指正哈    本文后续也许还会有删改, 就 ...

  5. 【Android应用开发】Android Studio 简介 (Android Studio Overview)

    一. Intelij IDEA 环境简介 Android Studio 来源 : Android Studio 是 Intelij IDEA 的免费版本 + Android SDK 集成的; -- I ...

  6. Google主推-Android开发利器——Android Studio,这可能是最全的AS教程!

    Android Studio使用手册 "工欲善其事必先利其器" 作为一个Android开发人员来说,一款好的开发工具也是相当重要的,在相当长的时间礼,Google都是基于Eclip ...

  7. Android开发:Android Studio开发环境配置

    一.android studio下载: 1.Windows版: 下载地址:https://pan.baidu.com/s/1-sg4dN_2B5nn2YJf-C7XLQ 提取码:yedc 2.Mac版 ...

  8. Android开发工具Android Studio、Android SDK和Genymotion完全配置

    所谓“工欲善其事,必先利其器”.Android Studio 是谷歌推出一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提 ...

  9. 9.4 苹果macOS电脑如何安装Android开发环境(Android Studio)

    下载 来到官方下载界面(需要 科 学 上 网),下载最新版本,点击Download,然后同意协议,在点击下载:如果平常看文档,可以点击Google中国Android开发者官网(部分用户可能也需要科 学 ...

随机推荐

  1. HRBUST 1217 统计单词个数

    $dp$. 设$dp[i][j]$为到$i$位置,切成了$j$段的最大收益,然后枚举一下$f$,$dp[i][j]=max(dp[f][j-1]+v[f+1][i])$.一段区间的价值可以用区间$dp ...

  2. 【POJ 2409】 Let it Bead(置换、burnside引理)

    Let it Bead "Let it Bead" company is located upstairs at 700 Cannery Row in Monterey, CA. ...

  3. HDU 6044 Limited Permutation(搜索+读入优化)

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=6044 [题目大意] 给出两个序列li,ri,现在要求构造排列p,使得对于区间[li,ri]来说, ...

  4. 【最短路】【spfa】CDOJ1633 去年春恨却来时,落花人独立,微雨燕双飞

    对于S集合中的数,例如a1,考虑到如果x能够被表示出来,那么x+a1也一定能被表示出来 设d[r]为所有模a1余r的数中,能被表示出来的最小的数 用d[x]+ai去更新d[(x+ai)%a1],跑最短 ...

  5. 【构造】Codeforces Round #405 (rated, Div. 1, based on VK Cup 2017 Round 1) A. Bear and Different Names

    如果某个位置i是Y,直接直到i+m-1为止填上新的数字. 如果是N,直接把a[i+m-1]填和a[i]相同即可,这样不影响其他段的答案. 当然如果前面没有过Y的话,都填上0就行了. #include& ...

  6. 1.1(JavaScript学习笔记)、JavaScript基础

    一.JavaScript简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型. 它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端 ...

  7. #iOS问题记录#WKWebView 闪退异常

    异常描述: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug 问题描述 ...

  8. Maven命名规范收集

    一.基本命名规范: groupId:定义当前Maven项目隶属的实际项目,例如org.sonatype.nexus,此id前半部分org.sonatype代表此项目隶属的组织或公司,后部分代表项目的名 ...

  9. [典型漏洞分享]结合YS业务分析使用oauth协议的风险

    结合YS业务分析oauth协议风险 问题描述: YS 使用QQ互联的openAPI实现QQ登录YS的功能,使用该功能需要在腾讯注册登录时的回调地址,根据oauth协议,用户的code或者access_ ...

  10. css一些我所不熟练的属性

    <hr />  表示一条横线 css的三种创建方式: 外部样式表 <head> <link rel="stylesheet" type="t ...