cordova--安卓打包

打包App

  • 创建一个文件夹 CD进入
  • cordova create esps com.mosesceo.ESPSApp ESPSApp -d

ESPSApp是项目的名字,com.mosesceo.ESPSApp是APP的包名,可以随意取,最好按照“com.” 开头

  • cd esps

  • cordova platform add android

    cordova platform remove android

  • cordova platform add ios
  • cordova build

    打包如果想要加密钥签名看下面

说说目录中文件的用处 
+ hooks:里面就一个readme.md文件,没什么卵用 
+ platfroms:通过cordova platforms add android 添加的安卓相关文件就放在里面,这个文件夹比较重要,打包生成的apk也在这个文件夹下 
+ plugins:cordova安装的插件在此文件夹下 
+ res:存放资源文件,我没有用到过 
+ www:这个文件下写我们的项目,如html,js,css等代码 
+ .npmignore:忽略文件,没什么用处 
+ config.xml:打包项目的配置文件,可以修改APP的包名,应用名称等

密钥签名写法

  • 根目录cordova build --release android
  • 生成:android-release-unsigned.apk 复制出来
  • keytool -genkeypair -alias 密钥名字.keystore -keyalg RSA -validity 4000 -keystore 密钥名字.keystore

    会出现在根目录一个密钥复制一下 > 里面一路回车+ 最后y

  • 根目录创建一个文件夹将 2、3两个文件复制进入,cd进入该文件夹输入
  • jarsigner -verbose -keystore 密钥名字.keystore -signedjar 打包后名字.apk 2打包出来的原始文件名字.apk 密钥名字.keystore


1. keytool -genkeypair -alias A.keystore -keyalg RSA -validity 4000 -keystore A.keystore(A是你的将要打包的A的原apk的签名名称)
keytool -genkeypair -alias name.keystore -keyalg RSA -validity 4000 -keystore name.keystore 

2. jarsigner -verbose -keystore A.keystore -signedjar C.apk B.apk A.keystore(B是你apk的名称,C是你想要得到的重新打包的apk文件)
jarsigner -verbose -keystore name.keystore -signedjar name.apk name_unsigned.apk name.keystore

如果打不开核实名字
https://blog.csdn.net/u013396632/article/details/70306379

如果设置一台设备两个端问题

删除掉重新安装文件将包名给换掉

  • cordova create esps com.mosesceos.ESPSApp ESPSApp -d

cordova项目生成的android平台和ios平台



android packageName和ios bundle id会默认使用根目录下config.xml里widget元素里id的属性值



最近因为总总原因,android packageName和ios bundle id需要不同



其实官方文档有说明可以配置,链接:http://cordova.apache.org/docs/en/latest/config_ref/index.html



<widget id="com.xxx.xxx" android-packageName="com.android.xxx" ios-CFBundleIdentifier="com.ios.xxx"

修改图片部分

在platforms\android\res
搜索所有的icon.png文件
覆盖成自己的

修改名字部分

config.xml文件

<?xml version='1.0' encoding='utf-8'?>
<!-- 在这里修改 -->
<widget id="com.mosesceos.app" android-packageName="com.android.mosesceos" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>工程师服务平台</name>
    <description>
        A sample Apache Cordova application that responds to the deviceready event.
    </description>
    <author email="[email protected]" href="http://cordova.io">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <plugin name="cordova-plugin-whitelist" spec="1" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <platform name="android">
        <allow-intent href="market:*" />
    </platform>
    <platform name="ios">
        <allow-intent href="itms:*" />
        <allow-intent href="itms-apps:*" />
    </platform>
    <engine name="android" spec="^7.0.0" />
</widget>

https://blog.csdn.net/wz172637815/article/details/50601897

猜你喜欢

转载自www.cnblogs.com/LingXiangLi/p/10252757.html