AltStore README

The project's README from github.com/altstoreio/AltStore. As one markdown file: README.md.

AltStore

AltStore is an alternative app store for non-jailbroken iOS devices.

Swift Version License: AGPL v3 PRs Welcome

AltStore is an iOS application that allows you to sideload other apps (.ipa files) onto your iOS device with just your Apple ID. AltStore resigns apps with your personal development certificate and sends them to a desktop app, AltServer, which installs the resigned apps back to your device using iTunes WiFi sync. To prevent apps from expiring, AltStore will also periodically refresh your apps in the background when on the same WiFi as AltServer.

For the initial release, I focused on building a solid foundation for distributing my own apps — primarily Delta, my all-in-one emulator for iOS. Now that Delta has been released, however, I'm beginning work on adding support for anyone to list and distribute their apps through AltStore (contributions welcome! 🙂).

Features

Minimum Project Requirements

Project Overview

AltStore

AltStore is a just regular, sandboxed iOS application. The AltStore app target contains the vast majority of AltStore's functionality, including all the logic for downloading and updating apps through AltStore. AltStore makes heavy use of standard iOS frameworks and technologies most iOS developers are familiar with, such as:

AltServer

AltServer is also just a regular, sandboxed macOS application. AltServer is significantly less complex than AltStore though, and for that reason consists of only a handful of files.

AltKit

AltKit is a shared framework that includes common code between AltStore and AltServer.

AltSign

AltSign is my internal framework used by both AltStore and AltServer to communicate with Apple's servers and resign apps. For more info, check the AltSign repo.

Roxas

Roxas is my internal framework used across all my iOS projects, developed to simplify a variety of common tasks used in iOS development. For more info, check the Roxas repo.

Compilation Instructions

AltStore and AltServer are both fairly straightforward to compile and run if you're already an iOS or macOS developer. To compile AltStore and/or AltServer:

  1. Clone the repository
    git clone https://github.com/rileytestut/AltStore.git
    
  2. Update submodules:
    cd AltStore 
    git submodule update --init --recursive
    
  3. Open AltStore.xcworkspace and select the AltStore project in the project navigator. On the Signing & Capabilities tab, change the team from Yvette Testut to your own account.
  4. (AltStore only) Change the value for ALTDeviceID in the Info.plist to your device's UDID. Normally, AltServer embeds the device's UDID in AltStore's Info.plist during installation. When running through Xcode you'll need to set the value yourself or else AltStore won't resign (or even install) apps for the proper device.
  5. (AltStore only) Change the value for ALTServerID in the Info.plist to your AltServer's serverID. This is embedded by AltServer during installation to help AltStore distinguish between multiple AltServers on the same network, and you can find this by using a Bonjour browsing application and noting the serverID advertised by AltServer. This isn't strictly necessary, because if AltStore can't find the AltServer with the embedded serverID it still falls back to trying another AltServer. However, this will help in cases where there are multiple AltServers running (plus the error messages are more helpful).
  6. Build + run app! 🎉

Licensing

Due to the licensing of some dependencies used by AltStore, I have no choice but to distribute AltStore under the AGPLv3 license. That being said, my goal for AltStore is for it to be an open source project anyone can use without restrictions, so I explicitly give permission for anyone to use, modify, and distribute all my original code for this project in any form, with or without attribution, without fear of legal consequences (dependencies remain under their original licenses, however).

Contact Me

Questions about AltStore in general? Make sure to read the FAQ at https://altstore.io/faq/

AltStore (altstoreio/AltStore)

Searching Database…

14.6K ·GitHub
这是什么?AltStore 是一个替代应用商店,让你只需使用 Apple ID 就能将 .ipa 应用侧载到未越狱的 iOS 设备上,无需越狱。
AltStore 是一个应用,还是还需要其他程序同时运行?它是一对配套应用:AltStore 运行在 iOS 设备上作为应用商店,而 AltServer 是一个独立的 macOS 桌面配套应用,负责重新签名应用并通过 WiFi 进行安装。
我该如何让 AltStore 在我的手机上运行?你需要在 Mac 上安装 AltServer,它会用你的 Apple ID 重新签名应用,并通过 iTunes WiFi 同步将 AltStore 推送到你的 iOS 设备上;如果要从源代码构建,则需要克隆仓库、更新子模块、在 Xcode 中打开 AltStore.xcworkspace,并使用你自己的开发者团队进行签名。
侧载后的应用会一直保持安装吗?不会——以这种方式签名的应用会随时间过期,因此 AltStore 会定期在后台重新签名并刷新它们,但前提是你的手机必须与 AltServer 处于同一个 WiFi 网络中。
作者为什么要开发 AltStore?初始版本的重点是搭建一个基础框架,用于分发作者自己的应用,主要是他的全能 iOS 模拟器 Delta。
其他开发者能否将自己的应用上架到 AltStore?初始版本尚未完全支持——作者正在努力让任何人都能通过 AltStore 上架和分发应用,欢迎为此做出贡献。
AltKit、AltSign 和 Roxas 是什么?AltKit 是一个共享框架,包含 AltStore 和 AltServer 共同使用的通用代码;AltSign 负责与 Apple 的服务器通信并重新签名应用;Roxas 是作者个人的实用工具框架,用于他所有的 iOS 项目。
Creator
altstoreio
Size
226.9 MB
Stars
14.6K
Age
7y
Commits · 90 Days