build.gradle文件修改:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
flatDir {
dirs 'libs'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
app->build.gradle文件修改:
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
defaultConfig {
applicationId "com.companyname"
minSdkVersion 22
targetSdkVersion 29
versionCode 1
versionName "1.0"
ndk {
abiFilters 'armeabi-v7a'
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main {
assets.srcDirs = ['../assets']
jniLibs.srcDirs = ['libs']
}
}
buildToolsVersion '29.0.3'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
dependencies {
compile(name: 'egret', ext: 'aar')
}
修改完后重新编译就可成功,之后 Build->Build Bundle(s)/APK(s)->Build APK 打包即可
包的位置在 "项目文件夹\app\build\outputs\apk\debug\app-debug.apk"
去除包中显示的fps等调试信息
到项目 java->com.companyname->MainActivity.java 修改
nativeAndroid.config.showFPS = false;
正式包打包方法
正式包方法:Build->Generate Signed Bundle or APK->APK
然后根据提示填信息就行
正式包的位置:"项目文件夹\app\release\app-release.apk"
*中国大陆的country code是86
jar signature和full apk signature的选择
这是从 Android 7.0引入的一个新的签名机制,它为APK附加了一些特性使其更具安全性,所以这个选项虽然不是强制性的,但最好两个都选,如果选择V2会产生错误可以不选V2
Android Studio 编译错误 Received close_notify during handshake解决
修改build.gradle
buildscript{
repositories{
//jcenter() //把这里注释掉,换成阿里的源
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
google()
}
}
allprojects{
repositories{
//jcenter() //把这里注释掉,换成阿里的源
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
}
apk名(安装后的名字)修改
<application
android:allowBackup="true"
android:icon="@drawable/icon"
//apk名字,用egret打包引用路径是
//文件主路径\app\src\main\res\values\strings.xml
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
记得一定要修改包名(不是apk名和apk文件名)
文件路径\app\src\main\AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="你的包名">
android studio自定义修改应用打包的apk文件的名字
gradle 3.0以上的版本:
android.applicationVariants.all {
variant ->
variant.outputs.all {
//在这里修改apk文件名,引号内的字符串都可以随便定义
outputFileName = "${variant.name}-v${variant.versionName}.apk"
}
}
gradle 3.0以下的版本:
gradle的版本可以到工程下的build.gradle查看:
我的是 classpath 'com.android.tools.build:gradle:3.1.2'
在app的build.gradle文件的android{}括号里添加
android.applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
//在这里修改apk文件名
def fileName = "想要的文件名.apk"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}