Commit Graph

311 Commits

Author SHA1 Message Date
Riley Testut
5cb283dc95 [AltStoreCore] Caches Patreon session cookies from in-app browser
Allows us to download apps from locked Patreon posts.
2023-12-01 16:49:56 -06:00
Riley Testut
d59ced9208 [AltStoreCore] Adds Pledge, PledgeReward, and PledgeTier
Allows us to cache pledges for current user, which can be used to determine if user has access to Patreon-only apps.
2023-12-01 16:49:56 -06:00
Riley Testut
7ed2dc8291 [AltStoreCore] Refactors PatreonAPI to reduce duplicate logic 2023-12-01 16:49:56 -06:00
Riley Testut
c04d63ba9d [AltStoreCore] Generalizes Source.sourceID(from:) logic into URL.normalized()
Allows comparing URLs that may have slight (but irrelevant) differences (e.g. trailing slashes).
2023-11-15 13:20:50 -06:00
Riley Testut
7d7e098ef5 Updates build version to 17 2023-10-23 16:17:42 -05:00
Riley Testut
2c4900925f Updates app version to 2.0b5 (16) 2023-10-19 18:56:19 -05:00
Riley Testut
d2c66d4f3b [AltStoreCore] Migrates Core Data model from v13 to v14 2023-10-19 18:38:30 -05:00
Riley Testut
a6bc4b5d5f Merge branch 'revised_source_json'
# Conflicts:
#	AltStore.xcodeproj/project.pbxproj
#	AltStore/App Detail/AppContentViewController.swift
#	AltStore/App Detail/AppViewController.swift
#	AltStore/Base.lproj/Main.storyboard
#	AltStoreCore/Model/DatabaseManager.swift
2023-10-19 16:43:50 -05:00
Riley Testut
2822c52f11 Replaces BrowseCollectionViewCell with AppCardCollectionViewCell
* Handles dynamic screenshot sizes
* Allows swiping through screenshots
* Supports iPhone + iPad screenshots
2023-10-19 16:24:56 -05:00
Riley Testut
cd67222237 Supports both iPhone + iPad screenshots
Prefers showing screenshots for current device, but falls back to all screenshots if there are no relevant ones.
2023-10-19 16:24:56 -05:00
Riley Testut
20417f39ba Supports viewing full screen app screenshots from AppViewController
[Missed] Uses layout config for PreviewAppScreenshots
2023-10-19 16:24:56 -05:00
Riley Testut
3656bf165b Merge branch 'sources_tab'
# Conflicts:
#	AltStore.xcodeproj/project.pbxproj
2023-10-19 14:18:43 -05:00
Riley Testut
df2a8f2b93 Merge branch 'logging' 2023-10-19 14:16:50 -05:00
Riley Testut
deb9cfa230 Fixes misplaced PRODUCT_BUNDLE_IDENTIFIER entry in Xcode project 2023-10-19 12:40:12 -05:00
Riley Testut
3cc991b476 [Apps] Moves source JSON files to separate repo 2023-10-19 12:38:52 -05:00
Riley Testut
0659d83afb Adds AddSourceViewController to add sources by URL or from list of recommended sources 2023-10-18 18:56:40 -05:00
Riley Testut
2133b6240d Logs sideloading-related events with OSLog 2023-10-18 14:28:17 -05:00
Riley Testut
1b56ac708f Refactors SourceViewController into dedicated tab
* Updates UI to use source icons + tint colors
* Adds Edit button + swipe actions
2023-10-17 14:49:13 -05:00
Riley Testut
ff46fb38b9 [AltStoreCore] Adds Source.isRecommended
Also replaces legacy “Trusted Sources” references with “Recommended Sources”
2023-10-16 18:26:59 -05:00
Riley Testut
24334f88ce [AltStoreCore] Updates DatabaseManager to support #Preview macro
Synchronously loads database via startForPreview(), and also erases database for DEBUG builds.

# Conflicts:
#	AltStore.xcodeproj/project.pbxproj
2023-10-16 16:56:51 -05:00
Riley Testut
50515382d0 Accurately displays dynamically-sized screenshots in AppViewController 2023-10-11 18:13:01 -05:00
Riley Testut
03fad2f202 [AltStoreCore] Updates DatabaseManager to support #Preview macro
Synchronously loads database via startForPreview(), and also erases database for DEBUG builds.
2023-10-11 18:02:12 -05:00
Riley Testut
26a05d323f [AltStoreCore] Adds AppScreenshot to support dynamically-sized screenshots
Preserves StoreApp.imageURL field in database model for backwards compatibility.
2023-10-11 15:05:27 -05:00
Riley Testut
7c9de40d25 [AltStoreCore] Generates Source.identifier from sourceURL 2023-10-10 17:39:20 -05:00
Riley Testut
990abb3162 [AltStoreCore] Fixes ALTAppPrivacyPermission.synthesizedName for legacy permissions 2023-10-10 15:29:34 -05:00
Riley Testut
d0eb2f2b0a Revises appPermissions JSON format
• Split into `entitlements` and `privacy` sections
• `entitlements` is an array of entitlement keys
• `privacy` is a dictionary mapping UsageDescription keys to their descriptions
2023-10-10 14:47:00 -05:00
Riley Testut
0d070e588e Updates app version to 2.0b4 (12) 2023-09-14 13:57:11 -05:00
Riley Testut
afde3b0bf8 [AltServer] Updates app version to 1.7 (78) 2023-09-14 13:54:52 -05:00
Riley Testut
c94677a70b [AltServer] Updates app version to 1.7rc (77) 2023-09-14 13:54:52 -05:00
Riley Testut
1202a2b7c0 [AltServer] Moves AnisetteDataManager to “Anisette Data” group 2023-09-13 15:36:41 -05:00
Riley Testut
cad9f90691 [AltServer] Fetches anisette data without Mail plug-in
Works on all macOS versions supported by AltServer.
2023-09-13 15:24:29 -05:00
Riley Testut
8a8c65b218 Updates app version to 2.0b3 2023-09-11 12:09:54 -05:00
Riley Testut
1a4b2fd74e [AltServer] Updates app version to 1.7b1 2023-09-08 15:15:02 -05:00
Riley Testut
8935f9ee2d [AltJIT] Changes AltSign-Dynamic to not be embedded
Fixes “Cycle in dependencies” compiler error when archiving AltServer.
2023-09-08 15:14:13 -05:00
Riley Testut
96ad129b00 [AltServer] Fixes exporting AltServer as generic Xcode archive 2023-09-08 14:53:32 -05:00
Riley Testut
61f2347ece [AltJIT] Fixes “AltSign-Dynamic not found” runtime error at launch 2023-09-08 14:19:48 -05:00
Riley Testut
dd761daed6 [AltServer] Supports enabling JIT on devices running iOS 17
AltServer embeds the AltJIT CLI tool in its app bundle and runs it as an admin subprocess.
2023-09-08 14:15:55 -05:00
Riley Testut
1f499e77d3 [AltJIT] Removes unnecessary ALTErrorKeys.h/.m
Was originally added because AltJIT couldn’t link with AltSign, which is not true anymore.
2023-09-08 13:47:07 -05:00
Riley Testut
d846445448 [AltJIT] Adds AltJIT CLI tool to enable JIT on devices running iOS 17+
Commands:

altjit enable [app/pid] --udid [udid]
* Enables JIT for given app/process

altjit mount --udid [udid]
* Mounts personalized developer disk
2023-09-07 18:02:29 -05:00
Riley Testut
ce3b032dc1 [AltWidget] Refactors previous widgets to use AppsTimelineProvider 2023-09-05 13:12:30 -05:00
Riley Testut
21c2f8d5ce [AltWidget] Adds interactive Active Apps widget to view + refresh all active apps (iOS 17+) 2023-09-05 13:11:21 -05:00
Riley Testut
c7932bf7b1 [AltWidget] Refactors widgets into separate files 2023-09-05 13:11:21 -05:00
Riley Testut
1940fbd60f [AltWidget] Supports refreshing apps directly from home screen 2023-08-18 19:30:16 -05:00
Riley Testut
ff3fb64277 [AltWidget] Adopts containerBackground(for:) on iOS 17 2023-08-18 19:30:16 -05:00
Riley Testut
7f148b1ce0 Converts legacy RefreshAllIntent into App Shortcut (iOS 17+) 2023-08-18 18:16:05 -05:00
Riley Testut
5a127ee430 Updates build version to 6 2023-05-31 15:07:08 -05:00
Riley Testut
7e29258d40 [AltStoreCore] Updates AltStore12ToAltStore13 mapping model for latest model changes
* Non-optional AppPermission.usageDescription
* Non-optional AppPermission.appBundleID
* Added AppPermission.sourceID
2023-05-30 15:37:10 -05:00
Riley Testut
1598166c29 Updates build version to 4 2023-05-30 13:04:47 -05:00
Riley Testut
418e594c1d Updates app version to 2.0b2 2023-05-29 20:14:09 -05:00
Riley Testut
c3721ba209 [AltStoreCore] Migrates Core Data model from v12 to v13 2023-05-29 16:50:17 -05:00