Code Monkey home page Code Monkey logo

apksigner's Introduction

icon

ApkSigner

GitHub release (with filter) GitHub Release Date - Published_At Github All Releases

A tool for Android developers to sign their applications with GUI software.

一款供 Android 开发者用来可视化签名的工具。

基于 JetBrains Compose Multiplatform

Support Mac Support Windows Static Badge

支持语言 LANGUAGES: 中文|Chinese, English

download button




ENGLISH README

工作中打包的某些 APK 在 360 加固时提示“没有签名”,但 360 加固提供的签名过程又过于繁琐,故此开发这样一个小工具,使用图形界面来签名 APK 文件。

本软件基于 JetBrains Compose Multiplatform 开发,支持 macOS、Windows、Linux。

我日常开发主要基于 macOS,因此在 Windows 和 Linux 上可能存在一些尚未发现的兼容性问题。如果你发现了这样的问题,敬请告知,我会尽可能适配。同时也非常欢迎你提交PR

主要功能

本 APP 是为了方便你通过图形界面操作签名 APK,支持管理、切换多个签名,一键签名 APK 等。 工具并不提供生成签名文件的功能,要使用此工具,你还需要提前准备好如下内容:

  • 签名文件,一般为 .keystore 或者 .jks 格式的文件,用来签名 APK
  • apksignerzipalign 文件,用来签名、对齐 APK,一般在 Android SDK 中的 build-tools 文件夹下某个版本中
  • Java 开发环境,签名 APK 的 apksigner 需要读取 JAVA_HOME 配置

🚧 目前界面功能还在持续完善中,基础功能可用:

  • 增/删/切换签名信息(只会修改 APP 自身配置,不会修改您的文件)
  • 签名 APK 文件,支持 V1,V2,V3,V4 方案
  • 指定签名 APK 输出目录
  • 查看 APK 已有签名信息
  • 支持 Light 和 Dark 主题,并可自动切换
  • 可选对齐与否
  • 支持多文件签名,查看签名
  • 导入多个签名文件
  • 自动保存/匹配 APK 对应的签名信息
  • 优化签名配置
  • 美化主题
  • 添加查看日志功能
  • 支持国际化语言,可自动识别系统语言

出于隐私考虑,本 APP 不会添加联网检测更新功能,如果你希望获取最新版本的信息,可以在 GitHub 上面 star 或者 watch 本项目,这样当 APP 有更新时 GitHub 会在首页或者使用邮件通知你。

界面预览


sign_info sign_app sign_settings sign_app_dark

使用

以下方式选择你喜欢的即可

1. 运行 .dmg 或 .msi 等系统特定软件包【推荐👍】

  • 直接运行本仓库提供的对应软件包

点击下载📦 最新 Release 软件包 (.dmg/.msi/.deb)

macOS 用户请注意,根据你的电脑芯片不同请分别下载对应软件:

  • Apple 芯片:下载*-arm64.dmg
  • Intel 芯片:下载*-x86_64.dmg

对于 Windows 或 Linux 系统用户,非常抱歉我并没有对应机器完全测试软件的可用性,如果在使用中有任何问题欢迎反馈,我会尽量修复。同时也推荐你参考下面的方式下载源码自助打包。

  • 或下载源码自助打包:
packageReleaseDeb // 适用于 ubuntu 等 Linux 系统
packageReleaseDmg // 适用于 macOS 系统
packageReleaseMsi // 适用于 Windows 系统
packageReleaseDistributionForCurrentOS //自动打包适合当前系统的软件包

2. 编译源码

  • 下载源码后,使用 IDEA 打开并运行 Main.kt 文件即可启动图形化界面。

对于 windwos 用户,如果遇到进程已结束,退出代码为 -1073741819 (0xC0000005),可以执行 ./gradlew run

可以在 gradle > ApkSigner > compose desktop > run 找到这个命令;

或者可以在 编辑配置 > Gradle > 添加新的运行配置... > 运行 一栏添加 run 即可。

3. 运行 jar 包

  1. 自行使用 jar 打包命令./gradlew packageReleaseUberJarForCurrentOS打包

  2. 运行java -jar xxx.jar即可启动软件

针对 MAC 用户,可以考虑使用 jar2app 将 jar 打包为 app 使用,避免繁琐的 mac 系统签名过程。

License

Copyright (C) JI,XIAOYONG

本软件(ApkSigner)是自由软件:你可以再分发之和/或依照由自由软件基金会发布的 GNU 通用公共许可证修改之,无论是版本 3 许可证,还是(按你的决定)任何以后版都可以。

发布 ApkSigner 是希望它能有用,但是并无保障;甚至连可销售和符合某个特定的目的都不保证。请参看 GNU 通用公共许可证,了解详情。

你应该随程序获得一份 GNU 通用公共许可证的复本。如果没有,请看 https://www.gnu.org/licenses/

附加条款

在不违反上述条款的基础之上,如果你想要基于此项目制作、分发你自己的软件版本,还需要遵守如下条款:

  • 保留作者信息:使用、复制、修改或分发本项目的源代码时,必须保留原作者的姓名和联系信息。

  • Logo 使用限制:未经原作者明确书面许可,不得使用、复制、修改或分发本项目的 Logo。

  • 源码链接:在使用、复制、修改或分发本项目的源代码、软件作品时,必须在显著位置(例如本软件“设置信息”页面底部)提供指向原项目源码网址的链接。

    文本内容为“本项目基于 JI,XIAOYONG 的开源项目 ApkSigner 开发,你可以免费在 https://github.com/jixiaoyong/ApkSigner获取项目源代码”。

apksigner's People

Contributors

i0link avatar jixiaoyong avatar sgpublic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

apksigner's Issues

无法保存签名文件信息

配置签名文件信息后,点击保存无反应,而且填的信息也被清空了
一般签名文件的配置是 storePassword ,keyAlias ,keyPassword 这三个,你的那个工具签名信息界面的第一项,签名别名是啥意思,跟keyAlias填一样的吗
1703742600883

[feature]添加自动匹配包名和签名配置的功能

          > 好想法,可以考虑添加这个功能。

还没想好交互以及数据格式,比如使用json还是使用gradle中的格式,单个签名配置需要有如下信息:

storeFileAlias "" // APP自定义的属性“签名别名”,用来区分多个签名文件,下面其他参数与android项目中配置一致
storeFile file('/path/to/key.keystore')
storePassword 'pwd'
keyAlias 'keyAlias'
keyPassword 'pwd'

可以添加 包名和签名配置的功能吗?即选择apk 自动选择签名配置,这样就不用来回选择签名配置了

Originally posted by @424385117 in #9 (comment)

[BUG] 不支持Windows下的apksigner.bat

系统类型

Windows

系统版本

10

软件版本

1.1.2

问题描述

想要实现的功能

支持apksigner.bat

遇到的问题

Windows下面的AndroidSDK带的build-tools下的apksigner是bat脚本而非exe可执行文件

尝试了如下方案,并未解决

复现步骤

[BUG] 概述遇到的问题 无法选择apksinger

系统类型

Windows

系统版本

win10

软件版本

1.2.0

问题描述

想要实现的功能

遇到的问题

image

尝试了如下方案,并未解决

我选了很多不同的版本都不行

image

复现步骤

触发了死循环多开的BUG

Screenshot 2024-01-16 165510

刚接触这款软件,在选择apksigner文件的时候选择了本目录中的apksigner程序,导致只要一开软件就疯狂多开。无法关闭。
目前不知道配置文件在哪?正在寻找解决方案。

另外当我从 D:\CommonFolder\SdkForAndroid\build-tools\34.0.0 这个目录拖拽时,我只能选择单文件zipalign.exe,无法识别apksigner.bat。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.