mirror of
https://github.com/StikDebug/StikDebug.git
synced 2026-10-16 04:20:30 +00:00
ok
This commit is contained in:
parent
7d5fd0c90c
commit
bc132e4b26
6 changed files with 46 additions and 20 deletions
|
|
@ -25,7 +25,7 @@ struct HeartbeatApp: App {
|
|||
"https://github.com/doronz88/DeveloperDiskImage/raw/refs/heads/main/PersonalizedImages/Xcode_iOS_DDI_Personalized/Image.dmg",
|
||||
"https://github.com/doronz88/DeveloperDiskImage/raw/refs/heads/main/PersonalizedImages/Xcode_iOS_DDI_Personalized/Image.dmg.trustcache"
|
||||
]
|
||||
|
||||
|
||||
let outputDir: String = "DDI"
|
||||
|
||||
let outputFiles: [String] = [
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ extension UIDocumentPickerViewController {
|
|||
}
|
||||
|
||||
struct HomeView: View {
|
||||
@Binding var is_lc: Bool
|
||||
@AppStorage("username") private var username = "User"
|
||||
@AppStorage("customBackgroundColor") private var customBackgroundColorHex: String = Color.primaryBackground.toHex() ?? "#000000"
|
||||
@State private var selectedBackgroundColor: Color = Color(hex: UserDefaults.standard.string(forKey: "customBackgroundColor") ?? "#000000") ?? Color.primaryBackground
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ struct SettingsView: View {
|
|||
@State private var pairingFileIsValid = false
|
||||
@State private var isImportingFile = false
|
||||
@State private var importProgress: Float = 0.0
|
||||
@State private var is_lc = false
|
||||
|
||||
@StateObject private var mountProg = MountingProgress.shared
|
||||
|
||||
|
|
@ -30,7 +31,8 @@ struct SettingsView: View {
|
|||
"Stossy11": "https://github.com/Stossy11.png",
|
||||
"Neo": "https://github.com/neoarz.png",
|
||||
"Se2crid": "https://github.com/Se2crid.png",
|
||||
"HugeBlack": "https://github.com/HugeBlack.png"
|
||||
"HugeBlack": "https://github.com/HugeBlack.png",
|
||||
"Wynwxst": "https://github.com/Wynwxst.png"
|
||||
]
|
||||
|
||||
var body: some View {
|
||||
|
|
@ -240,6 +242,21 @@ struct SettingsView: View {
|
|||
self.mounted = isMounted()
|
||||
}
|
||||
}
|
||||
SettingsCard {
|
||||
VStack(alignment: .leading, spacing: 20) {
|
||||
Text("Misclaneous Settings")
|
||||
.font(.headline)
|
||||
.foregroundColor(.primary)
|
||||
.padding(.bottom, 4)
|
||||
|
||||
Toggle("Enable in-LiveContainer JIT", isOn: $is_lc)
|
||||
.padding()
|
||||
|
||||
HomeView(is_lc: $is_lc)
|
||||
}
|
||||
.padding(.vertical, 20)
|
||||
.padding(.horizontal, 16)
|
||||
}
|
||||
|
||||
|
||||
// About section
|
||||
|
|
@ -324,6 +341,8 @@ struct SettingsView: View {
|
|||
CollaboratorRow(name: "Se2crid", url: "https://github.com/Se2crid", imageUrl: developerProfiles["Se2crid"] ?? "")
|
||||
|
||||
CollaboratorRow(name: "HugeBlack", url: "https://github.com/HugeBlack", imageUrl: developerProfiles["HugeBlack"] ?? "")
|
||||
|
||||
CollaboratorRow(name: "Wynwxst", url: "https://github.com/Wynwxst", imageUrl: developerProfiles["Wynwxst"] ?? "")
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@ JITEnableContext* sharedJITContext = nil;
|
|||
completionHandler(result,[NSString stringWithCString:message encoding:NSASCIIStringEncoding]);
|
||||
}, [self createCLogger:logger]);
|
||||
}
|
||||
- (void)debugAppWithBundleID:(NSString*)bundleID logger:(LogFunc)logger {
|
||||
- (void)debugAppWithBundleID:(NSString*)bundleID logger:(LogFunc)logger isLC:(BOOL)isLC {
|
||||
if(!provider) {
|
||||
if(logger) {
|
||||
logger(@"Provider not initialized!");
|
||||
|
|
@ -93,7 +93,7 @@ JITEnableContext* sharedJITContext = nil;
|
|||
return;
|
||||
}
|
||||
|
||||
debug_app(provider, [bundleID UTF8String], [self createCLogger:logger]);
|
||||
debug_app(provider, [bundleID UTF8String], [self createCLogger:logger], (bool)(isLC));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
#include "jit.h"
|
||||
|
||||
int debug_app(TcpProviderHandle* tcp_provider, const char *bundle_id, LogFuncC logger) {
|
||||
int debug_app(TcpProviderHandle* tcp_provider, const char *bundle_id, LogFuncC logger,bool isLC) {
|
||||
// Initialize logger
|
||||
idevice_init_logger(Debug, Disabled, NULL);
|
||||
IdeviceErrorCode err = IdeviceSuccess;
|
||||
|
|
@ -99,8 +99,10 @@ int debug_app(TcpProviderHandle* tcp_provider, const char *bundle_id, LogFuncC l
|
|||
* Process Control - Launch App
|
||||
*****************************************************************/
|
||||
logger("=== Launching App ===");
|
||||
uint64_t pid;
|
||||
|
||||
// Get the adapter back from the XPC device
|
||||
|
||||
AdapterHandle *pc_adapter = NULL;
|
||||
err = xpc_device_adapter_into_inner(xpc_device, &pc_adapter);
|
||||
if (err != IdeviceSuccess) {
|
||||
|
|
@ -141,21 +143,25 @@ int debug_app(TcpProviderHandle* tcp_provider, const char *bundle_id, LogFuncC l
|
|||
xpc_service_free(debug_service);
|
||||
return 1;
|
||||
}
|
||||
|
||||
// Launch application
|
||||
uint64_t pid;
|
||||
err = process_control_launch_app(process_control, bundle_id, NULL, 0, NULL, 0,
|
||||
true, false, &pid);
|
||||
if (err != IdeviceSuccess) {
|
||||
logger("Failed to launch app: %d", err);
|
||||
process_control_free(process_control);
|
||||
remote_server_free(remote_server);
|
||||
xpc_service_free(pc_service);
|
||||
xpc_service_free(debug_service);
|
||||
return 1;
|
||||
if(!isLC){
|
||||
|
||||
// Launch application
|
||||
|
||||
err = process_control_launch_app(process_control, bundle_id, NULL, 0, NULL, 0,
|
||||
true, false, &pid);
|
||||
if (err != IdeviceSuccess) {
|
||||
logger("Failed to launch app: %d", err);
|
||||
process_control_free(process_control);
|
||||
remote_server_free(remote_server);
|
||||
xpc_service_free(pc_service);
|
||||
xpc_service_free(debug_service);
|
||||
return 1;
|
||||
}
|
||||
|
||||
logger("Successfully launched app with PID: %" PRIu64 "", pid);
|
||||
} else {
|
||||
pid = getpid();
|
||||
}
|
||||
logger("Successfully launched app with PID: %" PRIu64 "", pid);
|
||||
|
||||
// Disable memory limit for PID
|
||||
err = process_control_disable_memory_limit(process_control, pid);
|
||||
if (err != IdeviceSuccess) {
|
||||
|
|
|
|||
|
|
@ -11,6 +11,6 @@
|
|||
#include "idevice.h"
|
||||
|
||||
typedef void (^LogFuncC)(const char* message, ...);
|
||||
int debug_app(TcpProviderHandle* provider, const char *bundle_id, LogFuncC logger);
|
||||
int debug_app(TcpProviderHandle* provider, const char *bundle_id, LogFuncC logger, bool isLC);
|
||||
|
||||
#endif /* JIT_H */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue