对于androidstudio修改包名感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解Androidstudio修改包名插件,并且为您提供关于Androidstudio使用心得(一)---a
对于android studio 修改包名感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解Android studio 修改包名插件,并且为您提供关于Android studio 使用心得 (一)---android studio 快速掌握快捷键、Android studio 使用心得(六)---android studio 如何加载.so文件、Android studio 使用心得(四)---android studio 多渠道打包、Android Studio 北极狐更新后,Android Studio 需要很长时间来构建项目的宝贵知识。
本文目录一览:- android studio 修改包名(Android studio 修改包名插件)
- Android studio 使用心得 (一)---android studio 快速掌握快捷键
- Android studio 使用心得(六)---android studio 如何加载.so文件
- Android studio 使用心得(四)---android studio 多渠道打包
- Android Studio 北极狐更新后,Android Studio 需要很长时间来构建项目
android studio 修改包名(Android studio 修改包名插件)
尊嘟假嘟,成都程序员也 996 吗?>>>
Android studio 使用心得 (一)---android studio 快速掌握快捷键
大家都是从 eclipse 转过来了,所以早就熟悉了 eclipse 那一套快捷键。
File--->settings--->keymap--> 选择 eclipse 就搞定
话是这么说,但是自动化提示的变了 Ctrl+Alt+Space。熟悉了 alt+/ 后很不适应,我们可以修改
1, 搜索 Class Name Completion 就找到了.
2, 添加快捷键
3. 输入 alt+/ 要一起按下两个键。点击 ok 搞定
想修改其它的类似了。
还有一个小技巧,就是自动导包的设置,因为现在已经变成了 alt+enter; 每次都这么输也烦,照下图改了后,就爽歪歪了,自动导包。
当然我们之前在 eclipse 里面 findViewById 的时候,强制转换很方便,但是在 android studio 你鼠标放多久都不会让你转,所以我们只需要把光标移动 findViewById 前,然后 alt+enter, 也搞定啦
Android studio 使用心得(六)---android studio 如何加载.so文件
之前一直没怎么注意,以为.so文件android为像eclipse一样直接加载,但是直到昨天我在android studio上调试公司项目推送消息的时候,才发现,.so文件原来没有加载成功.
可能之前 Android studio 使用心得(三)---从Eclipse迁移到Android 这篇文章我是用Demo4来做例子,里面并没有引用.so文件,所以大家按照这篇文章去迁移项目的时候,会遇到问题。昨天我网上找了一下关于android studio gradle 加载.so文件的文章,发现大多还停留在gradle 低版本的时候的解决方法,看上去都好复杂,现在android studio1.0以后解决这个问题就很简单啦!如果大家还在用1.0以前的版本那我就要喷你一脸啦。。
我先提一点,就是如果从android studio上直接创建一个项目和从eclipse迁移过来的项目其实目录结构会稍微有区别的。
1. 我先讲一下,怎么解决从eclipse迁移过来的代码加载.so文件.直接以我的项目为例。
先看一下目录结构
大家会注意到,我们从eclipse迁移过来的项目,会默认给我们创建一个文件夹jniLibs,然后把eclipse里面libs文件夹里的内容都复制过来,如果直接在android studio 里面创建项目是不会有这个文件夹的,这是区别一。从eclipse迁移过来的项目上,会在build.gradle配置文件里面加上一段配置
sourceSets {
main {
manifest.srcFile ''AndroidManifest.xml''
java.srcDirs = [''src'']
resources.srcDirs = [''src'']
aidl.srcDirs = [''src'']
renderscript.srcDirs = [''src'']
res.srcDirs = [''res'']
assets.srcDirs = [''assets'']
jniLibs.srcDirs = [''libs'']//这一行是没有的,如果我们有.so文件就需要加上这一行代码
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot(''tests'')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot(''build-types/debug'')
release.setRoot(''build-types/release'')
}
再看一下图。之前我一直认为 compile fileTree(dir: ''libs'', include: ''*.jar'')这样就会全部加载.jar和.so文件,其实我错了,如果没有在sourceSets main里面加上一句 jniLibs.srcDirs = [''libs''],是不会加载.so文件的。
2.如果我们创建项目就是在android studio上创建的
默认没有jniLibs文件夹。所以需要我们自己创建。目录 src--->main--->jniLibs
以加载加载信鸽sdk为例子
我们先把.so文件全部复制到jniLibs文件。目录不变,
最后添加成功
然后,再说一下添加.jar包。跟eclipse一样,先把.jar文件放到libs目录下,然后add asLibrary.就可以了。
运行项目,就Ok了。这时也不需要再去配置
jniLibs.srcDirs = [''libs'']
Android studio 使用心得(四)---android studio 多渠道打包
第一就是配置:在项目的build.gradle里面配置 先上图,再上代码。
第二步,就是打包。(网上有介绍用命令打包,可是我这人太懒,发现了个小窍门,直接在android studio 里面进行。)上图(另外,后面我还是补上了gradle命令打包的介绍。大家可以看看http://my.oschina.net/aibenben/blog/370985)
如果没有keystore,先创建一个,默认为.jks文件,一样的。
大家这里创建完后,可以再回头看看前面配置的build.gradle里面signingConfigs的内容。是不是就懂了(其实我这里有一个疑问,感觉如果用我这种方式去打包,签名文件都没有去读取配置文件里面的了)
大家可以注意这里的Flavors,先回头看看前面配置的buld.gradle文件里面的productFlavors,嘿嘿,渠道都在这了,按住ctrl,选择你要打包的渠道,然后Finish.静静等待。需要要时间
打包成功!点击直接会进入到项目
打包好的apk,就在这了。
----当然,打包的过程中,好多盆友可能会遇到一个错误.导致打包失败。
Execution failed for task '':proguardGooglePlayRelease''.java.io.IOException: Can''t write [D:\androidstudiocode\Demo4\build\intermediates\classes-proguard\GooglePlay\release\classes.jar] (Can''t read [D:\androidstudiocode\Demo4\build\intermediates\exploded-aar\Demo4\appcompat_v7_8\unspecified\libs\android-support-v4.jar(;;;;;;!META-INF/MANIFEST.MF)] (Duplicate zip entry [android/support/v4/b/d.class == android-support-v4.jar:android/support/v4/os/ParcelableCompatCreatorHoneycombMR2.class]))
是因为混淆打包的时候,有重复的v4包,所以你只需要删掉一个,在Demo4这个项目里面,我是直接注释掉
再打包,等待,成功。
打包成功,我们可以验证 Android 多渠道打包渠道验证 .
最后直接贴上配置代码
apply plugin: ''com.android.application''
dependencies {
// compile fileTree(dir: ''libs'', include: ''*.jar'')
compile project('':appcompat_v7_8'')
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath ''com.android.tools.build:gradle:1.0.0''
}
}
android {
compileSdkVersion 19
buildToolsVersion "21.0.2"
sourceSets {
main {
manifest.srcFile ''AndroidManifest.xml''
java.srcDirs = [''src'']
resources.srcDirs = [''src'']
aidl.srcDirs = [''src'']
renderscript.srcDirs = [''src'']
res.srcDirs = [''res'']
assets.srcDirs = [''assets'']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot(''tests'')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot(''build-types/debug'')
release.setRoot(''build-types/release'')
}
defaultConfig {
applicationId "com.example.demo4"
minSdkVersion 8
targetSdkVersion 19
versionCode 1
versionName "1.0"
// dex突破65535的限制
multiDexEnabled true
// AndroidManifest.xml 里面UMENG_CHANNEL的value为 ${UMENG_CHANNEL_VALUE} manifestPlaceholders = [UMENG_CHANNEL_VALUE: "channel_name"]
}
//执行lint检查,有任何的错误或者警告提示,都会终止构建,我们可以将其关掉。
lintOptions {
abortOnError false
}
//签名
signingConfigs {
debug {
storeFile file("C:/Users/xxx/.android/debug.keystore")
}
relealse {
storeFile file("demo.jks")
storePassword "demo123456"
keyAlias "demo_4"
keyPassword "demo123456"
}
}
buildTypes {
debug {
// 显示Log
buildConfigField "boolean", "LOG_DEBUG", "true"
versionNameSuffix "-debug"
minifyEnabled false
zipAlignEnabled false
shrinkResources false
signingConfig signingConfigs.debug
}
release {
// 不显示Log
buildConfigField "boolean", "LOG_DEBUG", "false"
//混淆
minifyEnabled true
//Zipalign优化
zipAlignEnabled true
// 移除无用的resource文件
shrinkResources true
//加载默认混淆配置文件 progudard-android.txt在sdk目录里面,不用管,proguard.cfg是我们自己配<span></span>的混淆文件
proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard.cfg''
//签名
signingConfig signingConfigs.relealse
}
}
//渠道Flavors,我这里写了一些常用的
productFlavors {
GooglePlay {}
xiaomi {}
umeng {}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith(''.apk'')) {
def fileName = outputFile.name.replace(".apk", "-${defaultConfig.versionName}.apk")
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
}
Android Studio 北极狐更新后,Android Studio 需要很长时间来构建项目
如何解决Android Studio 北极狐更新后,Android Studio 需要很长时间来构建项目?
看看正常构建需要多少时间 如果您有任何解决方案,请帮助我
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
关于android studio 修改包名和Android studio 修改包名插件的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于Android studio 使用心得 (一)---android studio 快速掌握快捷键、Android studio 使用心得(六)---android studio 如何加载.so文件、Android studio 使用心得(四)---android studio 多渠道打包、Android Studio 北极狐更新后,Android Studio 需要很长时间来构建项目等相关知识的信息别忘了在本站进行查找喔。
本文标签: