精华内容
下载资源
问答
  • Android开发中常常需要进行多渠道打包,并且在包名中加入特定的标识,例如在提测阶段的包名中加入版本号、版本、打包的时间,便于区分不同的测试。配置发布渠道为了能够生成不同渠道的安装包,一般需要进行构建...

    Android开发中常常需要进行多渠道打包,并且在包名中加入特定的标识,例如在提测阶段的包名中加入版本号、版本名、打包的时间,便于区分不同的测试包。

    配置发布渠道

    为了能够生成不同渠道的安装包,一般需要进行构建变体的配置,一般使用产品风味来区分不同的渠道,产品风味也可以进行其它类型包的区分,如付费版与非付费版,因此在产品风味的基础上可以使用风味纬度来管理不同大类的风味,例如可以定义一个渠道纬度“channel”,负责管理渠道产品风味。一个付费纬度“pay”来管理付费产品风味,如下所示:android {

    flavorDimnsions "channel", "pay"

    productFlavors {

    dev {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "dev"]

    }

    google {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "google"]

    }

    alibaba {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "alibaba"]

    }

    tencent {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "tencent"]

    }

    xiaomi {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "xiaomi"]

    }

    oppo {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "oppo"]

    }

    baidu {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: "baidu"]

    }

    // ...

    paid {

    dimension "pay"

    }

    free {

    dimension "pay"

    }

    }

    }

    然而主流和次要渠道可能达到几十上百个,手动一一配置略显繁琐,借助基于Groovy的Gradle提供的强大编程能力,我们可以从一个文件中去加载所需的渠道。通过一个普通的文本文件或者json,csv文件就可以做到:

    channel.csvdev

    google

    alibaba

    tencent

    xiaomi

    oppo

    baidu

    然后可以通过从文件中读取渠道,然后添加到产品风味中:android {

    flavorDimensions "channel"

    def channelFile = rootProject.file("channel.csv")

    def channels = channelFile.readLines()

    productFlavors {

    channels.each { channel ->

    productFlavors.create(channel, {

    dimension "channel"

    manifestPlaceholders = [APP_CHANNEL: channel]

    })

    }

    }

    }

    修改包名// If you use each() to iterate through the variant objects,

    // you need to start using all(). That's because each() iterates

    // through only the objects that already exist during configuration time—

    // but those object don't exist at configuration time with the new model.

    // However, all() adapts to the new model by picking up object as they are

    // added during execution.

    android.applicationVariants.all { variant ->

    variant.outputs.all {

    def name = outputFileName.replaceFirst("app-", "fafabtc-").replaceAll(".apk", "")

    outputFileName = "${name}-${variant.versionName}.apk"

    }

    }

    展开全文
  • 这样名就修改成功了,但是安装后的app会覆盖原来的apk,那怎么修改包名才会生成新的app,不会覆盖原来的app,其实很简单,只需要修改Gradle Scripys里面找到app对应的build.gradle然后修改 applicationId ...

     

    1.修改包名,如下图所示:

     

     

    点击Refactor,完成修改,

     

    这样包名就修改成功了,但是安装后的app会覆盖原来的apk,那怎么修改包名才会生成新的app,不会覆盖原来的app,其实很简单,只需要修改Gradle Scripts里面找到app对应的build.gradle然后修改

    applicationId

     

    展开全文
  • 在android{}中 加入以下代码 //打包改名 android.applicationVariants.all { variant -> variant.outputs.all { // 名称_android_版本号.apk outputFileName = "想改成的名字_${defaultConfig.versionName}_${...

    1.先在当前项目的build.gradle (不是根目录下的build.gradle)中android{}的外面加上

    // 获取当前系统时间

    def releaseTime() {

    return new Date().format("yyyy_MM_dd", TimeZone.getTimeZone("UTC"))

    }

    apply plugin: 'com.android.application'

    // 获取当前系统时间

    def releaseTime() {

    return new Date().format("yyyy_MM_dd", TimeZone.getTimeZone("UTC"))

    }

    android {

    }

    dependencies {

    }

    2.在android{}中 加入以下代码

    //打包改名

    android.applicationVariants.all { variant ->

    variant.outputs.all {

    // 名称_android_版本号.apk

    outputFileName = "想改成的名字_${defaultConfig.versionName}_${releaseTime()}.apk"

    }

    }

    如下图所示:

    android {

    compileSdkVersion rootProject.compileSdkVersion

    defaultConfig {

    }

    buildTypes {

    release {

    minifyEnabled false

    shrinkResources false

    useProguard false

    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

    }

    debug {

    minifyEnabled false

    useProguard false

    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

    }

    }

    //打包改名

    android.applicationVariants.all { variant ->

    variant.outputs.all {

    // 名称_android_版本号.apk

    outputFileName = "名字${defaultConfig.versionName}_${releaseTime()}.apk"

    }

    }

    }

    展开全文
  • 由于要发布到海外不同国家和地区,所以需要对不同地区的apk名字进行适配。适配步骤如下: 1,发布apk的时候,Assets同级下会产生Temp文件夹,进入Temp\StagingArea\res下面拷贝values文件夹。 2,将...

      由于要发布到海外不同国家和地区,所以需要对不同地区的apk名字进行适配。适配步骤如下:

      1,发布apk的时候,Assets同级下会产生Temp文件夹,进入Temp\StagingArea\res下面拷贝values文件夹。

     

     

      2,将values文件夹拷贝到Assets\Plugins\Android\res下面,没有就创建,然后复制粘贴,分别按照需要改名,改名规则如下:

    维吾尔文(中国):values-ug-rCN
    
    中文(中国):values-zh-rCN
    
    中文(台湾):values-zh-rTW
    
    中文(香港):values-zh-rHK
    
    英语(美国):values-en-rUS
    
    英语(英国):values-en-rGB
    
    英文(澳大利亚):values-en-rAU
    
    英文(加拿大):values-en-rCA
    
    英文(爱尔兰):values-en-rIE
    
    英文(印度):values-en-rIN
    
    英文(新西兰):values-en-rNZ
    
    英文(新加坡):values-en-rSG
    
    英文(南非):values-en-rZA
    
    阿拉伯文(埃及):values-ar-rEG
    
    阿拉伯文(以色列):values-ar-rIL
    
    保加利亚文:  values-bg-rBG
    
    加泰罗尼亚文:values-ca-rES
    
    捷克文:values-cs-rCZ
    
    丹麦文:values-da-rDK
    
    德文(奥地利):values-de-rAT
    
    德文(瑞士):values-de-rCH
    
    德文(德国):values-de-rDE
    
    德文(列支敦士登):values-de-rLI
    
    希腊文:values-el-rGR
    
    西班牙文(西班牙):values-es-rES
    
    西班牙文(美国):values-es-rUS
    
    芬兰文(芬兰):values-fi-rFI
    
    法文(比利时):values-fr-rBE
    
    法文(加拿大):values-fr-rCA
    
    法文(瑞士):values-fr-rCH
    
    法文(法国):values-fr-rFR
    
    希伯来文:values-iw-rIL
    
    印地文:values-hi-rIN
    
    克罗里亚文:values-hr-rHR
    
    匈牙利文:values-hu-rHU
    
    印度尼西亚文:values-in-rID
    
    意大利文(瑞士):values-it-rCH
    
    意大利文(意大利):values-it-rIT
    
    日文:values-ja-rJP
    
    韩文:values-ko-rKR
    
    立陶宛文:valueslt-rLT
    
    拉脱维亚文:values-lv-rLV
    
    挪威博克马尔文:values-nb-rNO
    
    荷兰文(比利时):values-nl-BE
    
    荷兰文(荷兰):values-nl-rNL
    
    波兰文:values-pl-rPL
    
    葡萄牙文(巴西):values-pt-rBR
    
    葡萄牙文(葡萄牙):values-pt-rPT
    
    罗马尼亚文:values-ro-rRO
    
    俄文:values-ru-rRU
    
    斯洛伐克文:values-sk-rSK
    
    斯洛文尼亚文:values-sl-rSI
    
    塞尔维亚文:values-sr-rRS
    
    瑞典文:values-sv-rSE
    
    泰文:values-th-rTH
    
    塔加洛语:values-tl-rPH
    
    土耳其文:values–r-rTR
    
    乌克兰文:values-uk-rUA
    
    越南文:values-vi-rVN

    大致文件分布如下:

     打开不同values下面的string,将其更改为对应的名称即可。

    展开全文
  • Android中APK打包流程

    千次阅读 2021-03-06 04:36:00
    通过aapt工具将 资源文件(res)、清单文件(AndroidManifest.xml)生成对应的R.java文件* 在项目的根目录下新建 gen目录,并且依次在gen目录下新建清单文件总包名对应的文件目录> 例如: 清单文件中包名是org.zdc.a....
  • 满意答案yuwind20082013.09.28采纳率:40%等级:9已帮助:562人渠道信息一般在 AndroidManifest.xml中修改以下值:首先你必须在AndroidManifest.xml中的meta-data修改以下的样子:android:name="UMENG_CHANNEL...
  • 有时候,自己开发的时候很会经常用到,但是修改的概率比较小,常常开发新项目的时候才配置一次,然后有时又要去查别人的资料,这里就做个配置记录,供大家参考。需求是这样的,就是应用可能有一个测试版,线上版本等...
  • 打包apk外部修改服务器地址 内容精选换一换当您以云模式或独享模式添加防护网站后,如果需要修改防护网站的服务器信息或者需要添加服务器信息时,可以修改服务器配置信息。本章节可对以下场景提供指导:修改服务器...
  • 修改包名: 工具: ​ apktool(反编译主要工具) ​ notepad++(包名字符串替换) 1、反编译:apktool d xxxx.apk 2、重新打包:apktool b [反编译生成的文件夹] 3、替换 res/string 文件中的 app_name 的值 ...
  • 在打包的文件路径的platforms\android\app下找到build.gradle文件,在adroid{}中添加如下代码: android.applicationVariants.all { ... outputFileName = "新的文件名.apk" } } 重新cnpm run build...
  • 原标题:Android 应用的 apk 包名和签名一致和不一致有什么样的影响?android系统使用包名(package name)来判定应用程序的同一性,但是由于包名可以由开发者自由设置,为了保护应用程序不被其他开发者开发的同包名...
  • 在build.gradle(app)内修改添加如下内容: signingConfigs { releaseJks { storeFile file('android_apk.jks') storePassword 'android_apk' keyAlias 'android' keyPassword 'android_apk' } } ...
  • linux下apk批量打包

    2021-05-13 03:48:57
    1.思路整个思路就是,把需要修改的参数以的方式定义在项目的AndroidManifest.xml文件中,具体参数如何获取及具体用法这儿我就不多说,然后打包好一个完整的apk包作为参照包。然后用python脚本把调用apktool工具把apk...
  • 本文讲述如何配置android studio环境下安卓项目配置apk的自定义名字 android.applicationVariants.all { ... //修改打包后的apk文件名 outputFileName = "ApkName_${variant.name}_v${variant.versionName}.apk
  • apk修改重新打包

    千次阅读 2021-12-09 11:18:45
    apktool d [apk文件路径] 示例 三、修改代码 1.修改资源文件 可直接修改并保存,然后进行下一步。 2.修改java代码 反编译出来的结果中只有smali文件,即Java虚拟机支持的汇编语言。 如果确实需要修改代码,...
  • multiple-apk-generator简介解决android apk的批量打包,支持渠道号替换或者服务器地址替换(字符串替换)、资源替换、指定文件修改修改包名轻量级: 使用shell脚本编写,方便开发者修改实现逻辑基于gradle打包apk使用...
  • Android Studio 打包APK(详细版)

    万次阅读 多人点赞 2021-01-07 15:22:01
    Android Studio 打包APK前言正文总结 前言   做Android开发肯定对APK不陌生,你现在Android手机上所有的应用都是apk,只不过分为系统自带和第三方。 正文   Android打包APK在开发中是必不可少的一个环节,相信...
  • releaseApkName) } if (variant.buildType.name.equals('beta')) { newName = oldFile.name.replace(".apk", "-v" + defaultConfig.versionName + "-build" + getDate() + ".apk") output.outputFile = new File...
  • 而一些不需要的按钮图片,注释掉可能出问题,比如调用,此时可以修改为不显示,或者直接把他的宽度高度修改为0注释方法是修改不显示的方法是加入android:visibility=”invisible”修改宽度高度方法是android:layo...
  • 1、修改包名修改AndroidManifest.xml文件对应的package值即可,尽量用字符 2、修改安装后的app的名称:android 的源码中选择“Res”--“values”文件夹,在“strings.xml”中修改app_name 的value
  • Android apk 打包配置

    2021-09-29 15:10:09
    首先创建xxx.jks ,将它放到app目录下 ...在app目录下的build.gradle中的android{} 配置 ... storeFile file("xxx.jks") // 需要修改成您的签名文件路径 storePassword '123456' // 需要修改成您的签名文件密码 keyAl
  • Android 如何修改APK的默认名称用Android Studio 打包App时生成的名称默认是 app-release.apk(已签名) 或 app-debug.apk(测试版)。要想打包时修改默认名称,可以打开在build.gradle(module:app)文件,在android{}中...
  • 如果没有对生成的apk进行自定义,那么Android studio默认生成的apk的名字一般默认是app-debug.apk,app-release.apk,这样的命名实在是太没有辨识度了。打包好后还需要重新命名,不胜其烦啊! 自定义方法:在build....
  • 一直在做Android应用开发,但对于从自己手中输出的apk包,了解并不是很深。最近想研究一下,消除下自己的一些技术盲点。好吧,废话少说,先切入主题。这篇文章主要介绍如何获取apk包中的dex文件,并简单修改里面的...
  • 前言小菜因为工作需要,经常需要一套代码修改很多次包名,虽然不是什么技术活,但是小菜的用的次数多了就有了一点点小技巧分享给大家,下面话不多说了,来一起看看详细的介绍吧。方法如下:1. 如果源码是在本机电脑...
  • Apk重新签名的工具

    2021-05-19 17:49:31
    该工具可以完成以下几个工作删除老的签名对apk进行重新签名对齐操作缺点只支持mac和linux,不支持window,原因为zip命令在window上面需要额外的配置使用条件必须安装了java环境需要支持zipalign,jarsigner,zip命令...
  • cordova打包apk更改图标

    2021-03-30 14:14:00
    在这一版的cordova 版本中,根目录下没有res文件夹,需要自己新建,然后把图标图片放进android文件夹去,打包apk,图标更改成功。 版权声明:本文为CHENJIANCONG66原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请...
  • 命令行打包 Android APK

    2021-06-04 14:17:45
    注意安装软件包管理器MAC 电脑Windows 电脑cmd.exe 中安装PowerShell.exe 中安装安装 JDK8Mac osWindows安装 GradleMac osWindows安装 Android SDKMac osWindows安装 androd build-tools构建调试 APK构建发布版本 ...
  • 一、app运行安装时出错【安装时出错】:【百度翻译】1 安装失败的消息未能敲定会议:install_failed_invalid_apk:/数据/应用程序/ vmdl292154713.tmp/9_slice_ _com.ahbcd.app.swms_3不符合com.ahbcd.app.tms。...
  • 修改app的build.gradle文件 android { ... productFlavors { // app1 app1 { // 设置applicationId(这里很重要,两个相同applicationId的apk不同同时安装在同一台Android手机中) applicationId ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 108,198
精华内容 43,279
关键字:

apk包名修改