当前位置: 首页 > news >正文

泊头市建设网站专业网站建设哪里有

泊头市建设网站,专业网站建设哪里有,实时热点新闻事件2023,性价比最高网站建设电话目录 1.添加productFlavors的配置buildConfigFieldmanifestPlaceholdersresValue 2.设置apk文件的名称#xff0c;便于识别3.添加vasdolly、添加gradle脚本#xff08;windows#xff09; 作用#xff1a;一次性可以打多个apk包#xff0c;名字、包名、logo等可以不相同。… 目录 1.添加productFlavors的配置buildConfigFieldmanifestPlaceholdersresValue 2.设置apk文件的名称便于识别3.添加vasdolly、添加gradle脚本windows 作用一次性可以打多个apk包名字、包名、logo等可以不相同。解决了每次发版都要手动修改代码的问题,例如名字、logo等。 配置build.gradleapp 1.添加productFlavors的配置 android{..... //设置风味的维度flavorDimensions [release]//productFlavors中有两套配置huawei、oppo。productFlavors {huawei {versionCode 8versionName 1.7.33dimension releaseapplicationId test.test.abcresValue string, file_provider_name_personal, applicationId .providermanifestPlaceholders [apkName: 语文,apkIcon: drawable/yuwen]ndk {abiFilters arm64-v8a//armeabi-v7a , arm64-v8a}buildConfigField int, COMPANY, 1}oppo {versionCode 7versionName 1.6.30dimension releaseapplicationId test.test.abcresValue string, file_provider_name_personal, applicationId .providermanifestPlaceholders [apkName: 数学,apkIcon: drawable/yuwen]ndk {abiFilters arm64-v8a//armeabi-v7a , arm64-v8a}buildConfigField int, COMPANY, 4}} }buildConfigField int, COMPANY, 1buildConfigField buildConfigField申明了一个常量方便在代码中进行使用。 BuildConfig文件 public final class BuildConfig {public static final int COMPANY 1; }使用buildConfigField public class MyApplication extends Application {Overridepublic void onCreate() {Constant.URL_PROTOCOLUSE http://xxx.xxx.cn/api/pro.jsp?company BuildConfig.COMPANY apptype getString(R.string.app_name);} }manifestPlaceholders 设置在manifest中数据 manifestPlaceholders [apkName: 数学,apkIcon: drawable/yuwen]applicationandroid:name.MainApplicationandroid:allowBackupfalseandroid:icon${apkIcon}android:label${apkName}/applicationresValue 声明一个在Strings.xml中的字符串。 resValue string, file_provider_name_personal, applicationId .provider声明后会自动生成。 ?xml version1.0 encodingutf-8? resources!-- Automatically generated file. DO NOT MODIFY --string namefile_provider_name_personal translatablefalsetest.test.abc/string/resources2.设置apk文件的名称便于识别 static def releaseTime() {SimpleDateFormat formatter new SimpleDateFormat(yyyy-MM-dd);return formatter.format(new Date()) } android {....applicationVariants.all { variant -variant.outputs.all { output -def outputFile output.outputFiledef fileNameif (outputFile ! null outputFile.name.endsWith(.apk)) {if (variant.buildType.name.equals(release)) {//如果是release包fileName ${productFlavors.name}-${buildType.name}-${productFlavors.versionName}- ${productFlavors.versionCode}-${releaseTime()}.apk} else if (variant.buildType.name.equals(debug)) {//如果是debug包fileName ${productFlavors.name}-${buildType.name}-${productFlavors.versionName}- ${productFlavors.versionCode}.apk}outputFileName fileName}}} }打出的apk名字-包类型-版本名称-版本号 一次性打多个包使用assemble assemble执行完毕后在app/build/outputs/apk中寻找。大致样子如下 3.添加vasdolly、添加gradle脚本windows vasdolly使用 https://github.com/Tencent/VasDolly 在build.gradle(app)文件中加入如下 Properties properties new Properties() properties.load(project.rootProject.file(local.properties).newDataInputStream()) def sdkDir properties.getProperty(sdk.dir) def buildToolsVersion 33.0.1//工具版本 def consolidatePath ./build/consolidate/ def storePwd //keystore文件密码 def alias //keystore文件alias def keyPwd //keystore文件密码def jksPath C:\\Users\\xxx\\Desktop\\资料\\app.keystore//keystore文件路径 /*** 优化加签名*/ task batchSign {doLast {File consolidateDir new File(project.buildDir, consolidate/)consolidateDir.eachFile { apkFile -def unsignedFileName apkFile.getName()def lastchar unsignedFileName.indexOf(.apk)def fileName unsignedFileName.substring(0, lastchar)def zipalignedFileName ${fileName}_zipaligned.apkdef signedFileName ${fileName}_signed.apkdef buildToolsPath ${sdkDir}\\build-tools\\${buildToolsVersion}def command ${buildToolsPath}\\zipalign -f -p 4 ${consolidatePath}${unsignedFileName} ${consolidatePath}${zipalignedFileName} del ${project.buildDir}\\consolidate\\${unsignedFileName} ${buildToolsPath}\\apksigner sign --ks ${jksPath} --ks-pass pass:${storePwd} --ks-key-alias ${alias} --key-pass pass:${keyPwd} --out ${consolidatePath}${signedFileName} ${consolidatePath}${zipalignedFileName} del ${project.buildDir}\\consolidate\\${zipalignedFileName} del ${project.buildDir}\\consolidate\\${fileName}_signed.apk.idsigprintln(command)exec {ExecSpec execSpec -executable cmdargs /c, command}}} }/* 将apk优化和签名后添加渠道 打渠道包*/ task makeChannel {def publishPath ./build/publish/doLast {def channels ./channels.txt //vasdolly的相关文件File consolidateDir new File(project.buildDir, consolidate/)consolidateDir.eachFile { apkFile -def command java -jar D:\\android\\gitdown\\VasDolly.jar put -c ${channels} ${apkFile.getAbsolutePath()} ${publishPath}try {exec {commandLine cmd, /c, command}} catch (Exception e) {e.printStackTrace()}}} }task bundleAndChannel {dependsOn(batchSign)dependsOn(makeChannel) }编译之后面在gradle中就会出现bundleAndChannel 准备加固、签名、渠道 在app/build/目录下创建consolidate和publish文件。 将360加固后的apk复制到app/build/consolidate文件中。 双击bundleAndChannel 等待编辑就可以了。
http://www.w-s-a.com/news/87499/

相关文章:

  • 大连网站平台研发wordpress更改地址
  • 做标书要不要做网站南昌网站排名优化费用
  • 网站内容如何自动关联新浪微博万网域名信息
  • 网站出售网络推广服务费计入什么科目
  • 宁波咨询网站设计西安网站制作开发
  • 深圳市专注网站建设全网营销网络推广
  • 如何快速建设网站虚拟空间软件
  • 一个虚拟主机可以做几个网站免费软件下载中心
  • 美工培训网站中国建筑网官网手机版
  • 创建网站花钱吗谁能给个网址免费的
  • 宁波教育学会网站建设网站建设价格由什么决定
  • 北京定制网站价格wordpress上传pdf文档
  • 网站建设费税率dz论坛seo设置
  • 推销网站话术商业网站开发与设计
  • 金华网站建设哪个网站做欧洲旅行比较好
  • 东莞市住房和城乡建设局网站trswcm网站建设
  • 郑州做网站企业h5编辑器免费版
  • 加强公司窗口网站建设陕西省外省入陕建筑信息平台
  • 成都网站优化实战大连企业网站建设模板
  • 服务器硬件影响网站速度seo网站推广价格
  • 学院网站开发竞争对手分析买网站送域名
  • 手机网站 jsp个人网页制作成品代码五个页面
  • ppt做长图网站wordpress文章页面图片自动适应
  • 做泌尿科网站价格京东商城网站建设教程
  • 像网站的ppt怎么做的移动app与网站建设的区别
  • 怎么建个人网站网站收录有什么用
  • 广州市医院网站建设广州头条新闻最近一周
  • 广州移动 网站设计中国交通建设监理协网站
  • 甘肃省第八建设集团公司网站wordpress topnews
  • 公司网站建设维保协议wordpress会员可看