Fixed 26.2 SDK errors + AirDrop 'done' bug

This commit is contained in:
√(noham)²
2026-05-28 00:20:30 +02:00
parent 26e6ed4c8d
commit 3d40efe291
8 changed files with 27 additions and 16 deletions

View File

@@ -1,4 +1,4 @@
TARGET := appletv:clang:16.4:14.0 TARGET := appletv:clang:26.2:14.0
INSTALL_TARGET_PROCESSES = TrollDecrypt INSTALL_TARGET_PROCESSES = TrollDecrypt
GO_EASY_ON_ME = 1 GO_EASY_ON_ME = 1

View File

@@ -10,7 +10,7 @@
<string>App Icon</string> <string>App Icon</string>
</dict> </dict>
<key>CFBundleIdentifier</key> <key>CFBundleIdentifier</key>
<string>com.fiore.trolldecrypt</string> <string>com.nohamr.trolldecrypt</string>
<key>CFBundleInfoDictionaryVersion</key> <key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string> <string>6.0</string>
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>

View File

@@ -12,6 +12,6 @@
- (id)initWithPathToBinary:(NSString *)pathToBinary appName:(NSString *)appName appVersion:(NSString *)appVersion; - (id)initWithPathToBinary:(NSString *)pathToBinary appName:(NSString *)appName appVersion:(NSString *)appVersion;
- (void)createIPAFile:(pid_t)pid; - (void)createIPAFile:(pid_t)pid;
- (BOOL)dumpDecryptedImage:(const struct mach_header *)image_mh fileName:(const char *)encryptedImageFilenameStr image:(int)imageNum task:(vm_map_t)targetTask; - (BOOL)dumpDecryptedImage:(vm_address_t)imageAddress fileName:(const char *)encryptedImageFilenameStr image:(int)imageNum task:(vm_map_t)targetTask;
- (NSString *)IPAPath; - (NSString *)IPAPath;
@end @end

View File

@@ -357,9 +357,9 @@ int find_off_cryptid(const char *filePath) {
[self makeDirectories:encryptedImageFilenameStr]; [self makeDirectories:encryptedImageFilenameStr];
//0x1518 //0x1518
uint32_t aslr_slide = 0; uint64_t aslr_slide = 0;
get_image_size(imageAddress, targetTask, &aslr_slide); get_image_size(imageAddress, targetTask, &aslr_slide);
NSLog(@"[trolldecrypt] aslr_slide= 0x%x", aslr_slide); NSLog(@"[trolldecrypt] aslr_slide= 0x%llx", aslr_slide);
off_cryptid=find_off_cryptid(encryptedImageFilenameStr); off_cryptid=find_off_cryptid(encryptedImageFilenameStr);
@@ -532,8 +532,8 @@ int find_off_cryptid(const char *filePath) {
mach_msg_type_number_t size3 = PATH_MAX; mach_msg_type_number_t size3 = PATH_MAX;
uint8_t *fpath_addr = readProcessMemory(targetTask, (mach_vm_address_t) info[i].imageFilePath, &size3); uint8_t *fpath_addr = readProcessMemory(targetTask, (mach_vm_address_t) info[i].imageFilePath, &size3);
imageAddress = (struct mach_header *)info[i].imageLoadAddress; imageAddress = (mach_vm_address_t)info[i].imageLoadAddress;
const char *imageName = fpath_addr; const char *imageName = (const char *)fpath_addr;
if(!imageName || !imageAddress) if(!imageName || !imageAddress)
continue; continue;

View File

@@ -50,12 +50,12 @@
cell.textLabel.text = self.fileList[indexPath.row]; cell.textLabel.text = self.fileList[indexPath.row];
cell.detailTextLabel.text = [dateFormatter stringFromDate:date]; cell.detailTextLabel.text = [dateFormatter stringFromDate:date];
cell.detailTextLabel.textColor = [UIColor systemGray2Color]; cell.detailTextLabel.textColor = [UIColor grayColor];
cell.imageView.image = [UIImage systemImageNamed:@"doc.fill"]; cell.imageView.image = [UIImage systemImageNamed:@"doc.fill"];
UILabel *label = [[UILabel alloc] init]; UILabel *label = [[UILabel alloc] init];
label.text = [NSString stringWithFormat:@"%.2f MB", [fileSize doubleValue] / 1000000.0f]; label.text = [NSString stringWithFormat:@"%.2f MB", [fileSize doubleValue] / 1000000.0f];
label.textColor = [UIColor systemGray2Color]; label.textColor = [UIColor grayColor];
label.font = [UIFont systemFontOfSize:12.0f]; label.font = [UIFont systemFontOfSize:12.0f];
[label sizeToFit]; [label sizeToFit];
label.textAlignment = NSTextAlignmentCenter; label.textAlignment = NSTextAlignmentCenter;
@@ -73,6 +73,7 @@
return YES; return YES;
} }
#if !TARGET_OS_TV
- (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath { - (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath {
UIContextualAction *deleteAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"Delete" handler:^(UIContextualAction *action, UIView *sourceView, void (^completionHandler)(BOOL)) { UIContextualAction *deleteAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"Delete" handler:^(UIContextualAction *action, UIView *sourceView, void (^completionHandler)(BOOL)) {
NSString *file = self.fileList[indexPath.row]; NSString *file = self.fileList[indexPath.row];
@@ -84,6 +85,7 @@
UISwipeActionsConfiguration *swipeActions = [UISwipeActionsConfiguration configurationWithActions:@[deleteAction]]; UISwipeActionsConfiguration *swipeActions = [UISwipeActionsConfiguration configurationWithActions:@[deleteAction]];
return swipeActions; return swipeActions;
} }
#endif
UIWindow *kw2 = NULL; UIWindow *kw2 = NULL;
UIAlertController *doneController2 = NULL; UIAlertController *doneController2 = NULL;
@@ -111,8 +113,11 @@ UIAlertController *doneController2 = NULL;
[sharingUI load]; [sharingUI load];
id sharingView = [[objc_getClass("SFAirDropSharingViewControllerTV") alloc] initWithSharingItems:@[url]]; id sharingView = [[objc_getClass("SFAirDropSharingViewControllerTV") alloc] initWithSharingItems:@[url]];
[sharingView setCompletionHandler:^(NSError *error) { [self dismissViewControllerAnimated:NO completion:^{
[self dismissViewControllerAnimated:true completion:nil]; [self presentViewController:sharingView animated:YES completion:nil];
[sharingView setCompletionHandler:^(NSError *error) {
[self dismissViewControllerAnimated:YES completion:nil];
}];
}]; }];
[self presentViewController:sharingView animated:true completion:nil]; [self presentViewController:sharingView animated:true completion:nil];

View File

@@ -9,13 +9,17 @@
self.apps = appList(); self.apps = appList();
self.title = @"TrollDecrypt"; self.title = @"TrollDecrypt";
#if !TARGET_OS_TV
self.navigationController.navigationBar.prefersLargeTitles = YES; self.navigationController.navigationBar.prefersLargeTitles = YES;
#endif
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage systemImageNamed:@"info.circle"] style:UIBarButtonItemStylePlain target:self action:@selector(about:)]; self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage systemImageNamed:@"info.circle"] style:UIBarButtonItemStylePlain target:self action:@selector(about:)];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage systemImageNamed:@"folder"] style:UIBarButtonItemStylePlain target:self action:@selector(openDocs:)]; self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage systemImageNamed:@"folder"] style:UIBarButtonItemStylePlain target:self action:@selector(openDocs:)];
#if !TARGET_OS_TV
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init]; UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(refreshApps:) forControlEvents:UIControlEventValueChanged]; [refreshControl addTarget:self action:@selector(refreshApps:) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl; self.refreshControl = refreshControl;
#endif
} }
- (void)viewDidAppear:(bool)animated { - (void)viewDidAppear:(bool)animated {
@@ -53,11 +57,13 @@
[self presentViewController:alert animated:YES completion:nil]; [self presentViewController:alert animated:YES completion:nil];
} }
#if !TARGET_OS_TV
- (void)refreshApps:(UIRefreshControl *)refreshControl { - (void)refreshApps:(UIRefreshControl *)refreshControl {
self.apps = appList(); self.apps = appList();
[self.tableView reloadData]; [self.tableView reloadData];
[refreshControl endRefreshing]; [refreshControl endRefreshing];
} }
#endif
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1; return 1;

View File

@@ -1,8 +1,8 @@
Package: com.fiore.trolldecrypt Package: com.nohamr.trolldecrypt
Name: TrollDecrypt Name: TrollDecrypt
Version: 1.1 Version: 1.2
Architecture: iphoneos-arm Architecture: iphoneos-arm
Description: An awesome application! Description: An awesome application!
Maintainer: fiore Maintainer: nohamr
Author: fiore Author: nohamr
Section: Utilities Section: Utilities

View File

@@ -5,7 +5,7 @@
<key>platform-application</key> <key>platform-application</key>
<true/> <true/>
<key>application-identifier</key> <key>application-identifier</key>
<string>com.fiore.trolldecrypt</string> <string>com.nohamr.trolldecrypt</string>
<key>com.apple.security.exception.files.absolute-path.read-write</key> <key>com.apple.security.exception.files.absolute-path.read-write</key>
<array> <array>
<string>/</string> <string>/</string>