tryzealot / zealot

开源自部署移动应用、 macOS、Linux 和 Windows 应用分发平台,提供 iOS、Android SDK、fastlane 等丰富组件库 | Self-hosted Beta App Distribution for Android, iOS, macOS, Linux and Windows apps
https://zealot.ews.im
MIT License
1.1k stars 136 forks source link

[Feature Request]: Application unpacking supports Android architecture #1735

Closed rakuyoMo closed 1 day ago

rakuyoMo commented 1 week ago

描述 | Description

An Android app may generate multiple apk installation packages at one time: universal, 64-bit or 32-bit. Therefore, the information of product version, build version, application name, and packaging type are consistent, and they belong to the same channel, but the architecture is different. (The same app store may upload multiple architecture apks at the same time)

Now when uploading apk, the architecture information will not be displayed when the application is unpacked, and the file name will not contain the corresponding information when downloaded, which will make it impossible to distinguish when actually using it.

In addition to displaying the architecture in the unpacking information, it is hoped that the architecture information can be added to the file name when downloading the apk. This is a very critical information for distinguishing which apk to use when publishing to the app store.

Hope to add this function, thank you very much!

icyleaf commented 1 week ago

Android cannot parse architectures or I have not been able to find where to obtain them; what is known so far is that they can be obtained at runtime layer.

rakuyoMo commented 6 days ago

So I hope you can reconsider this request: https://github.com/tryzealot/zealot/issues/1611, which can be used as a compromise solution at this stage.

CI can build names like "[channel_name]-arm64-v8a_2024_11_07_18_24_1.22.1.apk", "[channel_name]-universal_2024_11_07_10_32_1.22.0.apk", so that users can clearly know what architecture they are downloading.

Otherwise, at this stage, unless the architecture is used as a channel, it is difficult to distinguish the architecture of different apk files in one channel. And it feels inappropriate to use the architecture as a channel.

rakuyoMo commented 6 days ago

Or consider using apt dump badging app.apk | grep 'native-code' ?

icyleaf commented 6 days ago

aapt is closed source project. i need find other way to do it with pure code.

rakuyoMo commented 6 days ago

OK.

I just wanted to let you know that it is very, very important to allow users to distinguish the architecture of the apk directly from the filename of the downloaded file.

Looking forward to your implementation of this feature. Have a nice day.

icyleaf commented 6 days ago

And aapt only return native-code with native code, else it will return empty.

TOT-JIN commented 4 days ago

I need this feature too !