【IT专家】在Android Studio中将Android工程变为Library使用
Android Studio Gradle 多渠道自动打包,动态修改HostUrl,签名apk,混淆配置详解

Android Studio Gradle 多渠道自动打包,动态修改HostUrl,签名apk,混淆配置详解最近遇到项目从Eclispe迁移到Android studio,以前的Ant自动打包脚本已经兼容不好了,所以用了Gradle实现打渠道包,切换环境等,Ant打包脚本[html] view plain copy print?在CODE上查看代码片派生到我的代码片<target name="-release-sign" if="has.keystore"><!-- only create apk if *not* a library project --><do-only-if-not-library elseText="Library project: do not create apk..."><sequential><property name="out.unaligned.file"location="${out.absolute.dir}/${}-release-unaligned.apk"/><!-- Signs the APK --><echo level="info">Signing final apk with your apk signer server...</echo><taskdef resource="com/myapk/ant/task/defaults.properties" classpath="${signer.jar}"/><apk-signerserver="/packservice/sign<pre name="code" class="html" style="font-size: 14px; line-height: 26px;">[html] view plain copy print?在CODE上查看代码片派生到我的代码片</pre><p><pre name="code" class="html">" apk="${out.packaged.file}" dest="${out.unaligned.file}" prodkey="${singer.prodkey}" verbose="true" timeout="500" retries="5" /> <!-- Zip aligns the APK --> <zipalign-helper in.package="${out.unaligned.file}" out.package="${out.final.file}"/> <echo level="info">Release Package: ${out.final.file}</echo> </sequential> </do-only-if-not-library> <record-build-info/> </target>Gradle加入配置,签名文件,配置打包生成apk文件名称规则,配置url,配置渠道等配置gradleandroid {}配置一些关于android的基本配置1配置依赖关系[java] view plain copy print?在CODE上查看代码片派生到我的代码片dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')testCompile 'junit:junit:4.12'compile 'com.android.support:appcompat-v7:23.2.1'compile 'com.android.support:support-v4:23.2.1'compile 'com.android.support:recyclerview-v7:23.2.1'......}如果想兼容v4[java] view plain copy print?在CODE上查看代码片派生到我的代码片compile ('com.android.support:recyclerview-v7:22.2.0'){ exclude module: 'support-v4' }3配置打包方式signingConfigs {[java] view plain copy print?在CODE上查看代码片派生到我的代码片release {keyAlias props['KEY_ALIAS']keyPassword props['KEY_PASSWORD']storeFile file(props['KEYSTORE_FILE'])storePassword props['KEYSTORE_PASSWORD']}debug {storeFile file('../../debug.keystore')storePassword 'you pass'keyAlias 'you key'keyPassword 'you pass'}}加载签名配置文件[java] view plain copy print?在CODE上查看代码片派生到我的代码片Properties props = new Properties()props.load(new FileInputStream(file("signing.properties")))签名文件signing.properties 配置如下:[java] view plain copy print?在CODE上查看代码片派生到我的代码片KEY_ALIAS = xxxxKEY_PASSWORD = 你的密码KEYSTORE_FILE = ../../nide.keystroe (相对路径)KEYSTORE_PASSWORD =密码签名你自己可生成,可以直接用eclispe生成的。
AndroidStudio更改Gradle缓存目录所引发的各种奇葩问题

AndroidStudio更改Gradle缓存⽬录所引发的各种奇葩问题AS运⽤gradle构建app项⽬,其中必然会缓存各种⽂件,如编译的各类class,依赖的各种jar包,那这个缓存⽂件放在哪⾥呢?默认位置:C:\Users(⽤户)\username\.gradle1不调整缓存⽬录也没多⼤关系,前提是你的C盘容量够⼤,因为这个缓存⽂件是随着时间的推移⽽逐渐增⼤的。
C盘是⼀个系统盘,我认为C盘就应该只⽤以放置操作系统;还有另⼀点是AS更新时下载的临时⽂件都放在这⾥C:\Users(⽤户)\username\AppData\Local\Temp1强迫症的我经常⼿贱去点了update sdk,经常就是2、3G,结果下载到⼀半的时候告诉我磁盘空间不⾜,这简直让我⽆法忍受,⼀咬⽛决定把缓存⽂件移到其它磁盘,况且下载缓存⽬录也⽆法更改。
未转移之前,我的.gradle⽂件夹⼤⼩如下图,惊⼈的达到了1G。
更改gradle的缓存⽬录在每个⼯程中都有这么⼀个⽂件夹⽬录gradle,点开其中的gradle-wrapper.properties可以看到右边中第⼀⾏等号右边的⼤写常量GRADLE_USER_HOME1这个就是gradle缓存的⽬录,配置与Java⼀样,新建⼀个环境变量,名字为GRADLE_USER_HOME,值就为其它盘中gradle要放置的⽂件⽬录,它会在这个⽬录下⾃动⽣成.gradle⽂件夹(如不存在)。
从下图中可以看到选择use defualt gradle⽤的环境变量设置的⽬录,这是推荐选项,还有第⼆个选择就是⾃⼰指定gradle放置的⽬录。
当完成了gradle缓存⽬录的设置后,我将C盘中的.gradle⽂件直接复制到了新的缓存⽬录中,然后引发了后续各种奇葩问题.项⽬⽆法编译,build error当更改缓存⽬录后,编译项⽬时AS报了如下的错误Error:Unable to load class'asLocalRepo601_3r3vayyz997q7cxsbexzcx3f1$_run_closure1$_closure2$_closure4$_closure5'.Possible causes for this unexpected error include:Gradle’s dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)Re-download dependencies and sync project (requires network)The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.Stop Gradle build processes (requires restart)Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.从英⽂的意思上看,是说Gradle的依赖库或者守护进程被损坏了,我clean然后rebuild过项⽬,依然报这个错误,没办法只能上stackoverflow,解决⽅法就是简单粗暴的删除.gradle这个⽂件夹,然后让AS重新构建项⽬,重新下载依赖库。
android studio打jar包给unity使用的流程和方法

android studio打jar包给unity使用的流程和方法【最新版4篇】目录(篇1)1.前言2.Android Studio 打 JAR 包的意义和作用3.操作步骤3.1 创建一个新的 Android 项目3.2 在项目中添加 JAR 包3.3 生成 JAR 包3.4 将 JAR 包导入 Unity 项目中4.总结正文(篇1)1.前言随着移动游戏开发的快速发展,越来越多的开发者选择使用 Unity 进行游戏开发。
而在 Unity 开发过程中,有时需要使用 Android Studio 打 JAR 包来实现某些功能。
本文将为您介绍如何在 Android Studio 中打 JAR 包,并将其导入 Unity 项目中使用的方法。
2.Android Studio 打 JAR 包的意义和作用JAR 包是一种方便的代码封装和传输方式。
在 Android Studio 中打JAR 包,可以将 Android 项目中的代码、资源和库打包成一个 JAR 文件,方便其他项目直接导入和使用。
3.操作步骤3.1 创建一个新的 Android 项目打开 Android Studio,然后创建一个新的 Android 项目。
在创建过程中,选择合适的项目模板和配置。
3.2 在项目中添加 JAR 包在项目中添加 JAR 包,需要先将 JAR 包文件放到项目的 libs 文件夹中。
然后,在项目的 build.gradle 文件中添加对 JAR 包的依赖。
3.3 生成 JAR 包在 Android Studio 中,可以使用命令行或 Gradle 工具生成 JAR 包。
在 terminal 中输入以下命令:```gradlew clean build```执行完成后,会生成一个 JAR 包文件。
3.4 将 JAR 包导入 Unity 项目中将生成的 JAR 包文件拷贝到 Unity 项目的 Assets 文件夹中。
然后,在 Unity 中打开 Assets 文件夹,选择 JAR 包文件,点击“Add Asset”按钮将其导入到 Unity 项目中。
Android studio 导入第三方类库步骤

Android studio 导入第三方类库步骤android studio 的导入第三方的类库的步骤如下:【以导入第三方的Zxing为例】1:确定自己使用的 AS上边的编译工具的版本:主要包括以下几参数:进入设置:找到自己的gradle路径在设置中查找gradle 选项系统预设路径在SDK的AS的安装路径下。
2:进入模块管理找到相关的参数:第二个参数和第三个参数:gradle version :2.8Android plugin Version 1.5.0第四个和第五个参数:找到这五个参数之后:到相应的位置修改相关的参数:先切换到Project视图下:在.idea 下找到gradle.xml:建议新建一个测试用的工程:按照空白工程中的参数修改自己引入的工程的相关参数。
在每个模块儿下边找到build.gradle,修改其中的参数为自己记录的参数。
在最外层的build.gradle 中,找到图示的参数:修改为自己记录的gradle参数。
也就是所谓的Android plugin Version。
最后修改根目录gradle下的gradle-warpper.proerties文件的gradle版本。
在每个模块的build.gradle中的apply plugin 指定了该模块是一个application还是一个library ,特别注意:library不能包括 applicationId 。
所谓的applicationId也就是相应的模块儿的包名。
在最外层的参数中:setting.gradle 中为该工程中包含的模块的名称。
在模块管理中的Dependencies中设置该模块所依赖的jar文件,或是第三方的类库文件。
点击右侧的加号或者减号可以进行相应的操作。
导包过程中常见的错误:资源文件的文件名中包含数字、源文件中有相应的错误,只能具体情况具体分析,注意分析message中的错误提示信息。
导入一个AndroidStudio工程作为一个Library Module

导入一个AndroidStudio工程作为一个Library Module在我们有两个Android Studio工程的情况时,我们想使用一个作为library工程导入到另一个工程作为一个module。
我们可以使用Android Studio很容易的做到。
让我们假设我们有两个工程:MyApplication和MyLibrary,我们想导入MyLibrary到MyApplication作为一个module。
首先我们需要从MyLibrary工程中找到module中的build.gradle文件,它通常在app目录下,除非你修改了module的名称。
注意builde.gradle文件的plugin是‘com.android.application’。
为了使用这个工程作为一个library工程,我们需要修改为 ‘com.android.library’。
文件的内容就像这样:试着sync一下工程,会出现一个错误: Library projects cannot set applicationId(类工程不能设置applicationId)。
我们可以删除gradle文件中的applicationId这行,在defaultConfig 括号里面。
MyLibrary 工程就修改完了。
然后我们在MyApplication 工程中导入MyLibrary 作为一个module。
在MyApplication 工程中,点击File -> New -> Import Module。
出现一个对话框从MyLibrary工程中找到你想要导入的Module目录。
通常它是app module除非你给了它另一个名称。
如果在MyApplication工程中Module使用相同的名称将会出现错误。
为了从一个library工程导入一个修改的Module,我们可以给它一个版本号在Module名称设置框。
修改Module的名称为my-library,导入成功。
android studio 代码格式化规则 -回复

android studio 代码格式化规则-回复Android Studio代码格式化规则在Android Studio中,代码格式化是一个非常重要的功能。
良好的代码格式不仅可以提高代码的可读性,也有助于团队合作。
本文将详细介绍Android Studio中的代码格式化规则,并提供一步一步的指导。
第一步:打开Android Studio和代码格式化设置首先,打开Android Studio,并打开您想要格式化的代码文件。
然后,导航到“File”菜单,选择“Settings”选项。
在弹出的对话框中,选择“Editor”部分,然后选择“Code Style”。
在“Code Style”选项卡中,您可以选择使用通用的代码格式化规则,也可以根据自己的需求进行更改。
第二步:选择编程语言在“Code Style”选项卡中,您可以选择不同的编程语言,如Java、Kotlin、XML等。
对于每种编程语言,都有其独特的代码格式化规则和选项,因此请根据您的需要选择适当的编程语言。
在本文中,我们将重点讨论Java代码的格式化规则。
第三步:更改代码格式化规则在“Code Style”选项卡中,您可以更改不同的代码格式化规则和选项。
下面是一些常见的代码格式化规则:1. 缩进:选择使用空格还是制表符进行缩进,并指定每次缩进的大小。
通常情况下,四个空格是一个常见的缩进大小。
2. 空行:定义代码中不同元素(类、方法、注释等)之间的空行数。
通常情况下,在类之前和方法之间都会有一个空行。
3. 对齐:定义不同元素的对齐方式,如变量声明、方法参数等。
通常情况下,对齐是通过在相同的缩进级别下对齐相关元素来实现的。
4. 空格:定义不同元素之间的空格使用。
例如,在括号内、操作符两侧、注释符号周围等都可以使用空格。
5. 换行:定义代码换行的规则。
例如,在超过指定行数限制时是否自动换行,是否在操作符之后换行等。
6. 排版:定义代码的排版规则。
编译apk简单方法
编译apk简单方法
编译APK的简单方法有以下几种:
1. 使用Android Studio:在Android Studio中打开项目后,通过点击“Build”菜单中的“Make Project”或“Rebuild Project”选项来编译APK。
编译完成后,APK文件将会生成在项目的“app/build/outputs/apk”目录下。
2. 使用Gradle命令行:在项目根目录下,通过运行“gradlew assemble”命令来编译APK。
编译完成后,APK文件将会生成在项目的“app/build/outputs/apk”目录下。
3. 使用命令行工具(例如Ant):在项目根目录下,通过运行构建工具的命令来编译APK。
具体的命令会根据使用的构建工具而有所不同,一般会指定项目的构建文件(例如
build.xml)和输出目录。
需要注意的是,编译APK前需要先确认项目的依赖库已经正确配置,并且项目中的代码没有语法错误。
另外,编译过程中可能会出现一些错误和警告信息,需要根据具体情况进行调试和修复。
AndroidStudio安装配置、环境搭建详细步骤及基本使用的详细教程
AndroidStudio安装配置、环境搭建详细步骤及基本使⽤的详细教程⽬录前⾔安装javaAndroid SDK下载和安装Android Studio的下载和安装(新建⼯程和调试运⾏)Android Studio的⼯程⽬录结构AndroidStudio的基本使⽤Android Studio 常⽤快捷⽅式把Android 项⽬切换到Android Studio前⾔ Android Studio的安装配置及使⽤篇终于来啦~ 废话不多说,以下针对JDK正确安装(及其环境变量配置完毕,即Java开发环境下)、Android Studio的安装,配置,以及创建⼯程、主题字体更换、窗⼝⼯具、布局、快捷⽅式等的基本使⽤逐⼀说明。
安装java在“系统变量”新建⼀个变量名为JAVA_HOME的变量,变量值为你本地java的安装⽬录,我这⾥为:C:\ProgramFiles\Java\jdk1.7.0_80,设置这个的⽬的是作为下⾯两个环境变量的⼀个引⽤在“系统变量”选项区域中查看PATH变量,如果不存在,则新建变量PATH,否则选中该变量,单击“编辑”按钮,在“变量值”⽂本框的起始位置添加“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;”在“系统变量”选项区域中查看CLASSPATH变量,如果不存在,则新建变量CLASSPATH,否则选中该变量,单击“编辑”按钮,在“变量值”⽂本框的起始位置添加“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”。
成功安装判断⽅法:键⼊命令“java -version”,“java”,“javac”⼏个命令,出现画⾯,说明环境变量配置成功; 说明:JAVA_HOME:该环境变量的值就是 Java 所在的⽬录,⼀些 Java 版的软件和⼀些 Java 的⼯具需要⽤到该变量,设置PATH 和 CLASSPATH 的时候,也可以使⽤该变量以⽅便设置。
AndroidstudioMaven仓库使用
AndroidstudioMaven仓库使⽤原⽂:如果你想在Android Studio中引⼊⼀个library到你的项⽬,你只需添加如下的⼀⾏代码到模块的build.gradle⽂件中。
dependencies {compile 'com.inthecheesefactory.thecheeselibrary:fb-like:0.9.3'}就是如此简单的⼀⾏代码,你就可以使⽤这个library了。
酷呆了。
不过你可能很好奇Android Studio是从哪⾥得到这个library的。
这篇⽂章将详细讲解这是怎么回事,包括如何把你的库发布出去分享给世界各地的其他开发者,这样不仅可以让世界更美好,还可以耍⼀次酷。
Android studio 是从哪⾥得到库的?先从这个简单的问题开始,我相信不是每个⼈都完全明⽩Android studio 是从哪⾥得到这些library的。
莫⾮就是Android studio 从google搜索然后下载了⼀个合适的给我们?呵呵,没那么复杂。
Android Studio是从build.gradle⾥⾯定义的Maven 仓库服务器上下载library的。
Apache Maven是Apache开发的⼀个⼯具,提供了⽤于贡献library的⽂件服务器。
总的来说,只有两个标准的Android library⽂件服务器:jcenter 和 Maven Central。
jcenterjcenter是⼀个由 维护的Maven仓库。
你可以在看到整个仓库的内容。
我们在项⽬的build.gradle ⽂件中如下定义仓库,就能使⽤jcenter了:allprojects {repositories {jcenter()}}Maven CentralMaven Central 则是由维护的Maven仓库。
你可以在看到整个仓库。
注:不管是jcenter还是Maven Central ,两者都是Maven仓库我们在项⽬的build.gradle ⽂件中如下定义仓库,就能使⽤Maven Central了:allprojects {repositories {mavenCentral()}}注意,虽然jcenter和Maven Central 都是标准的 android library仓库,但是它们维护在完全不同的服务器上,由不同的⼈提供内容,两者之间毫⽆关系。
AndroidStudio导入项目的几种方法
AndroidStudio导入项目的几种方法本篇教程中使用到的Android Studio版本为1.0,Eclipse ADT 版本23.0.4。
请尝试更新到该版本。
Android Studio默认使用Gradle 构建项目, Eclipse 默认使用Ant 构建项目。
建议Android Studio导入项目时,使用Gradle 构建项目。
导入Eclipse项目本例中,使用到的Eclipse 项目结构如图:e-demo为主项目,appcompat_v7 为 library 项目。
导入Generate Gradle build files项目Google官方建议是通过本方法进行Android Studio导入 Eclipse 项目。
这种方式有一个好处就是兼容Eclipse 的文件目录结构,通过版本控制中的文件过滤,可以在一个项目组中,同时使用Eclipse 和Android Studio。
讲解1File--> Export讲解2选择导出类型。
选择Android --> Generate Gradle build files 。
点击Next 。
讲解3很长一段英语(完全看不懂是什么意思)。
点击Next 。
讲解4选择要导出的项目。
因为我的e-demo 项目依赖了 appcompat_v7 项目,所以我将e-demo 和 appcompat_v7 都选择了导出。
点击Next 。
讲解5最终确认要导出的项目。
Force overriding of existing files表示覆盖导出文件。
使用Generate Gradle build files 的方式导出项目,会在项目目录中生成一些文件。
这里的覆盖文件指的就是覆盖这些可能已经生成过的文件。
如果你之前有使用这种方式导出过项目,建议勾选。
点击Finish 。
讲解6这一步没有什么好说的,直接点击Finish 。
讲解7Finish点击完毕,并没有弹出窗口显示导出的项目,就好像什么事情都没有做一样。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本文由我司收集整编,推荐下载,如有疑问,请与我司联系在Android Studio 中将Android 工程变为Library 使用2017/03/14 8979 有时候网上会有些工程格式不是我们想要的Library 格式可以
直接给AS 使用。
这时我们就需要将它移植到AS 上并将其变为库。
1. 将ADT 工程export 成gradle 可编译的工程。
2. 导入AS,保留src、res、manifest 和gradle 文件。
3. 将gradle 中的applyplugin:’com.android.application’改为library。
4. 删除其他文件,然后将工程放在需要依赖的工程的app 同级目录下。
5. 在setting.gradle 中include 库。
6. 在project structure 中添加依赖关系。
7. 完成依赖。
假如是AS 工程要变为library,则保留根目录的src 文件夹和build.gradle,删除
其他文件。
对照:
apply plugin: ‘com.android.library’version= “1.1.0”// 版本号android { compileSdkVersion 23 buildToolsVersion “23”resourcePrefix “imgsel”defaultConfig { minSdkVersion 15 targetSdkVersion 23 versionCode 5 versionName “1.1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard- android.txt’),‘proguard-rules.pro’ } }}dependencies { compile fileTree(include: [‘*.jar’], dir: ‘libs’) }
tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。