Post

Replies

Boosts

Views

Activity

Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
What I do not understand, on my XS Max previous methods are added on WebView loadRequest on my 15 Pro Max methods are already added in Application delegate didFinishLaunching... Same code runing in same time from same Xcode But it explain why some category of devices have the issue from start, and other not or only with some actions in the app
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
In fact, if we make DIFF between all methods of "NSData* data" before and after the call of loadRequest : unsigned char toto[] = "titi"; NSData* data = [NSData dataWithBytes:toto length:4]; NSLog(@"%@", [data performSelector:@selector(_methodDescription)]); [self.myWebView loadRequest:urlReq]; NSLog(@"%@", [data performSelector:@selector(_methodDescription)]); it may be scary if you have one of this methods added : - (unsigned long) u64BE:(unsigned long)arg1; (0x23856f0c0) - (unsigned long) u64LE:(unsigned long)arg1; (0x23856f094) - (unsigned short) u16BE:(unsigned long)arg1; (0x23856efd4) - (unsigned short) u16LE:(unsigned long)arg1; (0x23856efa8) - (unsigned int) u32BE:(unsigned long)arg1; (0x23856f034) - (unsigned int) u32LE:(unsigned long)arg1; (0x23856f008) - (id) sha1; (0x238565bd0) - (id) sha256; (0x238565c64) - (id) sha384; (0x238565cf8) - (id) asHexString; (0x23856ed34) + (id) dataWithHexString:(id)arg1; (0x23856edf0) + (id) randomData:(unsigned long)arg1; (0x238566b98) + (id) withU16BE:(unsigned short)arg1; (0x23856f0f0) - (BOOL) isAllZero; (0x23857012c) - (BOOL) isEqualToHexCString:(const char*)arg1; (0x238570218) ... etc ( I don't put all )
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
AMAZING << 2 ! I ask a user to send me a screen record, and I see he have a "accessibility shortcut" activated. Let's try : Add "Accessibility > Accessibility shortcut > Full Keyboard Access" Select "Full Keyboard Access" in menu Then, when I launch my app, from the start of the first screen (without WebView call) , my [NSData sha256] function is remplaced like the previous case with the WebView. -- So, i can reproduce by this way : => Settings / Accessibility / Keyboards / Full keyboard access : ON / OFF ON : NSData have sha256 function replaced by the system OFF : NSData keep my sha256 function and the app works fine
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
AMAZING ! look at this : How reproduce the issue - not only in iPhone PRO NSData+Tools.h add function @interface NSData (Tools) - (NSString *)sha256; // see the code above with CC_SHA256 // ... @end In a UIView with a WKWebView : - (void)viewDidLoad { NSURL *url = [[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html" subdirectory:@"www"]; NSURLRequest* urlReq = [NSURLRequest requestWithURL:url]; unsigned char toto[] = "titi"; NSData* data = [NSData dataWithBytes:toto length:4]; id hash; hash = [data sha256]; DLog( @"1 NSData SHA256 %@", hash ); [self.myWebView loadRequest:urlReq]; hash = [data sha256]; DLog( @"2 NSData SHA256 %@", hash ); } log : 1 NSData SHA256 cce66316b4c1c59df94a35afb80cecd82d1a8d91b554022557e115f5c275f515 2 NSData SHA256 {length = 32, bytes = 0xcce66316 b4c1c59d f94a35af b80cecd8 ... 57e115f5 c275f515 } My function sha256 was replaced when calling loadRequest !
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
Hi @eskimo Yes, the issue seems happend always for devices which have the issue one time. I have 2 apps with this same code, when the issue happens on a device the 2 apps have the issue, I ask to restart the device, uninstall/install the app, check 4G/Wifi/VPN*, but nothing change. I can't ask those users more action, TestFlight is too involving. I have tested on simulator : no issue. I just buy a 15 Pro for testing (!) and unfortunately i can't reproduce the issue. Thanks for any other info. (*) first i suspect network problem with NSURLSessionDownloadTask.
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
The more time passes, the more samples can help to find common points. At this time : Only 17.4 concerned Pro and Pro Max are mainly concerned but not all and not specific iPhone number (13/14/15) One user with iPhone 14 MPW73CH/A contact me for the first time (!?) So, you’ve tested this with iOS 17.4 on a model that matches what one of your affected users has? I do not have a pro version. I ask some users but they don't have this issue. Others devices tested do not have the issue. Thank you
Mar ’24
Reply to iOS17.4 - iPhone Pro / ProMax - SHA256
Hello, Here the code "flatted" - executed in main thread. NSString* pfn = /* path file name */ NSData* data = [NSData dataWithContentsOfFile:pfn]; .... if( data.length > 0 ) { CC_LONG hashLen = CC_SHA256_DIGEST_LENGTH; unsigned char hash[ hashLen ]; CC_SHA256( data.bytes, (CC_LONG)data.length, hash ); NSMutableString *output = [NSMutableString stringWithCapacity:hashLen * 2]; for (int i = 0 ; i < hashLen ; i++ ) [output appendFormat:@"%02x", hash[i]]; return output; } return nil; and then, NSString is compared to the required Hash. What we know with some tests elsewhere : required hash length > 0 file exists, file have the good size (about 4400 bytes) data.length > 0 the code above return not nil (output) but comparaison return not equal for a small part of all devices, and only from iOS17.4
Mar ’24
Reply to Is it possible to make shortcuts available only after an in-app purchase?
I would say no. But others may have another interpretation. The limit is the same for monetized widgets or others extensions. They are available but it is their content that is monetized. https://developer.apple.com/app-store/review/guidelines/ 3.2 Other Business Model Issues ... 3.2.2 Unacceptable ... (ii) Monetizing built-in capabilities provided by the hardware or operating system
Feb ’23