Jump to content

Tweak.xm


X204

19 posts in this topic

Recommended Posts

Posted

How to write codes in tweak.xm after hacking the game in IDA, because I can’t find this anywhere I tried to do it by myself but always got error when i try to make package .

Posted
11 hours ago, Joey said:

Weird topic. Maybe you should show your error & explain in detail what you have done so far?

@import Foundation;
@import UIKit;
#import <substrate.h>
#import "vm_writeData.h"

// To MSHook Offsets, use https://iosgods.com/topic/22718-mshook-offsets/
// To Generate Tweak.xm and Preferences Plist https://iosgods.com/topic/24138-code-inject/
  
#define PLIST_PATH @"/var/mobile/Library/Preferences/com.x204.fwdhack.plist"

inline bool GetPrefBool(NSString *key) {
        return [[[NSDictionary dictionaryWithContentsOfFile:PLIST_PATH] valueForKey:key] boolValue];
}

%ctor {
    // Code Injection example
    if(GetPrefBool(@"key1")) {
      vm_writeData(0x016BB4F4, 0x200080D2); // 
    }
}

This for example i make it to try to make tweak.mx file but can’t make package always error I don’t know if i make it correctly , i know how to chenge it in binary but can’t make tweak , offset 016BB4F4 hacked hex 200080D2C0035FD6

 
Posted
23 minutes ago, Joey said:

dude. As i said, what the hell is the error. We can’t just magically guess the error.

==> Preprocessing Tweak.xm…                             

==> Preprocessing Tweak.xm…                             

==> Compiling Tweak.xm (arm64)…                         

Tweak.xm:40:22: error: instance method '-openURL:options:completionHandler:' not found (return type defaults to 'id') [-Werror,-Wobjc-method-access]                      

        [application openURL:URL options:@{} completionHandler:^(BOOL success) {                                 

                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                   

/var/theos/sdks/iPhoneOS9.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:103:40: note: receiver is instance of class declared here               

NS_CLASS_AVAILABLE_IOS(2_0) @interface UIApplication : UIResponder                                               

                                       ^                

Tweak.xm:51:22: error: instance method '-openURL:options:completionHandler:' not found (return type defaults to 'id') [-Werror,-Wobjc-method-access]                      

        [application openURL:URL options:@{} completionHandler:^(BOOL success) {                                 

                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                   

/var/theos/sdks/iPhoneOS9.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:103:40: note: receiver is instance of class declared here               

NS_CLASS_AVAILABLE_IOS(2_0) @interface UIApplication : UIResponder                                               

                                       ^                

2 errors generated.                                     

make[3]: *** [/var/theos/makefiles/instance/rules.mk:269: /var/mobile/fwdhack1/.theos/obj/arm64/Tweak.xm.289a9040.o] Error 1                                              

make[2]: *** [/var/theos/makefiles/instance/library.mk:33: /var/mobile/fwdhack1/.theos/obj/arm64/Fwdhack1.dylib] Error 2                                                  

make[2]: *** Waiting for unfinished jobs....            

==> Compiling Tweak.xm (armv7)…                         

Tweak.xm:40:22: error: instance method '-openURL:options:completionHandler:' not found (return type defaults to 'id') [-Werror,-Wobjc-method-access]                      

        [application openURL:URL options:@{} completionHandler:^(BOOL success) {                                 

                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                   

/var/theos/sdks/iPhoneOS9.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:103:40: note: receiver is instance of class declared here               

NS_CLASS_AVAILABLE_IOS(2_0) @interface UIApplication : UIResponder                                               

                                       ^                

Tweak.xm:51:22: error: instance method '-openURL:options:completionHandler:' not found (return type defaults to 'id') [-Werror,-Wobjc-method-access]                      

        [application openURL:URL options:@{} completionHandler:^(BOOL success) {                                 

                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                   

/var/theos/sdks/iPhoneOS9.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:103:40: note: receiver is instance of class declared here               

NS_CLASS_AVAILABLE_IOS(2_0) @interface UIApplication : UIResponder                                               

                                       ^                

2 errors generated.                                     

make[3]: *** [/var/theos/makefiles/instance/rules.mk:269: /var/mobile/fwdhack1/.theos/obj/armv7/Tweak.xm.a1e99472.o] Error 1                                              

make[2]: *** [/var/theos/makefiles/instance/library.mk:33: /var/mobile/fwdhack1/.theos/obj/armv7/Fwdhack1.dylib] Error 2                                                  

make[1]: *** [/var/theos/makefiles/instance/library.mk:24: internal-library-all_] Error 2                        

make: *** [/var/theos/makefiles/master/rules.mk:123: Fwdhack1.all.tweak.variables] Error 2

Posted

You are using the openURL function for iOS 10+ SDK. By your errors, I see you have the iOS 9 SDK so replace them with:

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @"https://example.com"]];

Or you can use an SDK with version >= 10. Have a nice day!

Posted
5 hours ago, bR34Kr said:

You are using the openURL function for iOS 10+ SDK. By your errors, I see you have the iOS 9 SDK so replace them with:


[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @"https://example.com"]];

Or you can use an SDK with version >= 10. Have a nice day!

New error

 

ld: framework not found Preferences                     

Not signing file                                        

clang-5.0: error: linker command failed with exit code 1

(use -v to see invocation)                              

make[4]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/armv7/Fwdhack1.bundle/Fwdhack1] Error 1                                         

==> Linking bundle Fwdhack1 (arm64)…                    

ld: framework not found Preferences                     

Not signing file                                        

clang-5.0: error: linker command failed with exit code 1

(use -v to see invocation)                              

make[4]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/arm64/Fwdhack1.bundle/Fwdhack1] Error 1                                         

make[3]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/armv7/Fwdhack1.bundle/Fwdhack1] Error 2                                         

make[3]: *** Waiting for unfinished jobs....            

make[3]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/arm64/Fwdhack1.bundle/Fwdhack1] Error 2                                         

make[2]: *** [/var/theos/makefiles/instance/bundle.mk:26: internal-bundle-all_] Error 2                          

make[1]: *** [/var/theos/makefiles/master/rules.mk:123: Fwdhack1.all.bundle.variables] Error 2                   

make: *** [/var/theos/makefiles/master/aggregate.mk:12: internal-all] Error 2

Posted
3 hours ago, X204 said:

New error

 

ld: framework not found Preferences                     

Not signing file                                        

clang-5.0: error: linker command failed with exit code 1

(use -v to see invocation)                              

make[4]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/armv7/Fwdhack1.bundle/Fwdhack1] Error 1                                         

==> Linking bundle Fwdhack1 (arm64)…                    

ld: framework not found Preferences                     

Not signing file                                        

clang-5.0: error: linker command failed with exit code 1

(use -v to see invocation)                              

make[4]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/arm64/Fwdhack1.bundle/Fwdhack1] Error 1                                         

make[3]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/armv7/Fwdhack1.bundle/Fwdhack1] Error 2                                         

make[3]: *** Waiting for unfinished jobs....            

make[3]: *** [/var/theos/makefiles/instance/bundle.mk:37: /var/mobile/fwdhack1/.theos/obj/arm64/Fwdhack1.bundle/Fwdhack1] Error 2                                         

make[2]: *** [/var/theos/makefiles/instance/bundle.mk:26: internal-bundle-all_] Error 2                          

make[1]: *** [/var/theos/makefiles/master/rules.mk:123: Fwdhack1.all.bundle.variables] Error 2                   

make: *** [/var/theos/makefiles/master/aggregate.mk:12: internal-all] Error 2

Are you using iOS 10 SDK?

Posted
12 minutes ago, bR34Kr said:

Are you using iOS 10 SDK? 

10.3 it was 9.3 before but I change it

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines