ionic 項目簽名

来源:http://www.cnblogs.com/gongdy/archive/2017/08/01/7270208.html
-Advertisement-
Play Games

一.ionic 自動簽名的好處與壞處(ionic build android/ios) 好處在於:可以直接安裝手機上進行安裝測試,也可以上傳Android或者iOS平臺 不好的地方在於:你的電腦環境變了換電腦了,再打包出來的簽名就會不一樣了,再打包出來的app就無法覆蓋之前的版本,會報簽名不一樣的問 ...


一.ionic 自動簽名的好處與壞處(ionic build android/ios)

 好處在於:可以直接安裝手機上進行安裝測試,也可以上傳Android或者iOS平臺

不好的地方在於:你的電腦環境變了換電腦了,再打包出來的簽名就會不一樣了,再打包出來的app就無法覆蓋之前的版本,會報簽名不一樣的問題

 

二.不採用自動簽名

1.打包運行 命令 ionic build --release android (安卓為例)

2.生成證書文件

keytool -genkey -v -keystore test.keystore -alias demo.keystore -keyalg RSA -validity 20000
命令運行之後會讓你填寫密鑰庫口令,
再次確認,之後是一些相關的個人以及公司信息,沒輸入完一次,回車就行,
之後還會有一個密鑰庫的口令,可以和密鑰庫的一樣或者重新寫;

keytool是工具名稱,-genkey意味著執行的是生成數字證書操作,-v表示將生成證書的詳細信息列印出來;
-keystore test.keystore 證書的文件名; 
-alias sign.keystore 表示證書的別名;
-keyalg RSA 生成密鑰文件所採用的演算法; 
-validity 20000 該數字證書的有效期,單位天;
出現的問題:
(1).keytool不是內部或可用命令,這裡需要把這個路徑配置到這個工具的上級文件夾,
比如我的keytool.exe是在Java\jdk1.8.0_121\bin\這個文件下,配置目錄到
Java\jdk1.8.0_121\bin\;最後這個\不要丟掉,配置的時候註意;(分號)沒有了要加上;
(2).輸入密鑰庫口令的時候輸入但並不在視窗上展示,其實已經輸上了;
3.對生成的未簽名的apk進行簽名
jarsigner -verbose -keystore /yourpath/demo.keystore -signedjar signafter.apk android-release.apk sign.keystore

 

jarsigner是工具名稱,-verbose表示將簽名過程中的詳細信息列印出來; 
-keystore /yourpath/test.keystore 之前生成的證書 找到證書的位置
signafter.apk 簽名後的apk 
android-release.apk 需要簽名的apk 
sign.keystore 證書的別名

註意的問題:

(1).配置的變數目錄要和上邊的類似,否則也會報命令不可用的問題.

位於jdk1.6.0_24\bin\目錄下

(2).運行這個命令的時候需要切換目錄到你需要簽名的apk的目錄,否則會報錯jar文件無法打開

(3).如果你是在你簽名證書存放的目錄下運行的這個命令,那麼你需要把你要簽名的apk複製到這個目錄下,否則也會報錯jar文件無法打開

4.對簽名過的apk進行優化,可以不優化

zipalign -v 4 signafter.apk  signend.apk

 1)zipalign是工具名稱,-v表示在DOS視窗列印出詳細的優化信息;
 2) 表示對已簽名文件signafter.apk進行優化,優化後的文件名為 signend.apk

5.查看apk簽名

 

Mac下,把apk的尾碼改為zip打開,然後查看META-INF下的.RSA文件 
Windows下,用winner打開apk,同樣查看.RSA文件 
執行命令

keytool -printcert -file META-INF/CERT.RSA

註意後面文件的名稱與路徑即可,可以查看到簽名信息,主要是查看Certificate fingerprints下的MD5與SHA1,這兩個不同就代表著簽名不同

 

6.利用證書文件當換電腦打包同一個app時,使app簽名不變

正在研究中,希望有看到的大神幫補充一下,謝謝


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.隱式方法,通過僅指定 Style 的 TargetType。(設置全部的Button樣式) 2.顯式方法,通過指定 Style 的 TargetType 和 x:Key 特性這一特性,然後通過使用顯式鍵的 {StaticResource} 標記擴展引用設置目標控制項的 Style 屬性 3.單個樣 ...
  • activity狀態的保存和恢復 一、簡介 1、保存activity狀態 * 保存activity狀態,onSaveInstanceState這個方法會自動保存有ID的組件的狀態 * 沒有ID的組件或者變數的狀態的保存就需要我們重寫這個方法* 這個方法是在activity被回收或者被銷毀的時候保存的 ...
  • 當你的應用運行在具有觸摸屏的設備上時,觸摸鍵盤可用於文本輸入。當用戶點擊可編輯的輸入欄位(如 TextBox 或 PasswordBox)時,系統會調用觸摸鍵盤。通過將文本控制項的輸入範圍設置為與你期望用戶輸入的數據類型匹配,可以讓用戶在應用中更快捷地輸入數據。輸入範圍會針對控制項所預期的文本輸入類型向 ...
  • 1、label約束: 1)、只需約束x、y 點相關就行。寬高 長度相關不用約束,就算用boundingRectWithSize計算出來的,也可能不准。 如:top、bottom二選一,trailing、leading二選一,或者center,寬高會自動生成。(同時約束trailing、leading ...
  • 一,代碼。 二,輸出。 ...
  • activity啟動模式之singleInstance 一、簡介 二、代碼實例 結果圖: 代碼: activity.C1 activity.C2 activity.C3 /activityLaunchSingleInstance/AndroidManifest.xml ...
  • activity啟動模式之singleTask 一、簡介 如果另外一個應用調用了C2,C2在棧底,如果這個程式裡面再嗲用C1,C3,C2,那麼這個C2就是調用onNewIntant的,C1和C3都被銷毀了; 另一個程式>c2>c1>c3>c2,實際只剩:另一個程式>c2。 二、代碼實例 效果圖: 上 ...
  • activity啟動模式之singleTop 一、簡介 二、設置方法 在AndroidManifest.xml中將要設置為singleTop啟動模式的頁面進行配置 <activity android:name="activityLaunchSingleTop.ActivityB2" android: ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...