L'URL d'iOS10 a été modifiée. Pour plus de détails, veuillez vous référer à https://github.com/cyanzhong/... Cependant, cela n'est valable que dans Widge et non dans l'application. Vous pouvez également utiliser d'autres méthodes pour sauter, mais comme il s'agit d'une API privée, elle ne passera pas l'examen.
Dans iOS10, accéder à des interfaces de configuration spécifiques telles que le Wi-Fi, les commutateurs de localisation, etc. ont été répertoriés comme API privées et ne sont pas autorisés à être utilisés ; iOS10 ne peut accéder qu'à l'interface de configuration de l'application correspondante : [[ UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
Pour le problème du non-saut d'iOS10, iOS propose en fait une méthode non divulguée. Mais la modération est un problème, mais nous pouvons trouver des moyens de le contourner.
NSString * defaultWork = [self getDefaultWork]; NSString * bluetoothMethod = [self getBluetoothMethod]; NSURL*url=[NSURL URLWithString:@"Prefs:root=Bluetooth"]; Class LSApplicationWorkspace = NSClassFromString (@"LSApplicationWorkspace"); [[LSApplicationWorkspace performSelector:NSSelectorFromString(defaultWork)] performSelector:NSSelectorFromString(bluetoothMethod) withObject:url withObject:nil]; Utilisez les valeurs ASCII pour assembler et combiner des méthodes. Cela contourne l’examen.
-(NSString *) getDefaultWork{ SData *dataOne = [NSData dataWithBytes:(unsigned char []) {0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x57,0x6f,0x72,0x6b, 0x73,0x70,0x61,0x63,0x65} longueur:16]; NSString *method = [[NSString alloc] initWithData:dataOne encoding:NSASCIIStringEncoding]; méthode de retour; } -( NSString *) getBluetoothMethod{ NSData *dataOne = [NSData dataWithBytes : (unsigned char []){0x6f, 0x70, 0x65, 0x6e, 0x53, 0x65, 0x6e, 0x73, 0x69,0x74, 0x69,0x76,0x65,0x55 ,0x52,0x4c} longueur : 16]; NSString *keyone = [[NSString alloc] initWithData:dataOne encoding:NSASCIIStringEncoding]; NSData *dataTwo = [NSData dataWithBytes:(unsigned char []){0x77, 0x69,0x74,0x68,0x4f,0x70,0x74,0x69,0x6f,0x6e,0x73} longueur:11]; NSString *keytwo = [[NSString alloc] initWithData:dataTwo encoding:NSASCIIStringEncoding]; NSString * method = [NSString stringWithFormat:@"%@%@%@%@",keyone,@":",keytwo,@":"]; return method; > Ce qui précède consiste à entrez les méthodes d’interface Bluetooth. Il peut également y avoir d’autres pages auxquelles accéder. La page de configuration est @"@"Prefs:root=TETHERING", et le wifi est @"Prefs:root=WIFI". Notez que le P dans Prefs est en majuscule. Il y a aussi des inconvénients à écrire de cette façon. Si la méthode non divulguée d'Apple est une fois modifié, il faut le refaire.
Référez-vous à mon autre réponse : https://segmentfault.com/q/10...
L'URL d'iOS10 a été modifiée. Pour plus de détails, veuillez vous référer à https://github.com/cyanzhong/...
Cependant, cela n'est valable que dans Widge et non dans l'application.
Vous pouvez également utiliser d'autres méthodes pour sauter, mais comme il s'agit d'une API privée, elle ne passera pas l'examen.
Référence : http://stackoverflow.com/ques...
Remplacez prefs : par Prefs : et c'est tout
Dans iOS10, accéder à des interfaces de configuration spécifiques telles que le Wi-Fi, les commutateurs de localisation, etc. ont été répertoriés comme API privées et ne sont pas autorisés à être utilisés ; iOS10 ne peut accéder qu'à l'interface de configuration de l'application correspondante :
[[ UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
Pour le problème du non-saut d'iOS10, iOS propose en fait une méthode non divulguée. Mais la modération est un problème, mais nous pouvons trouver des moyens de le contourner.
NSString * defaultWork = [self getDefaultWork];
NSString * bluetoothMethod = [self getBluetoothMethod];
NSURL*url=[NSURL URLWithString:@"Prefs:root=Bluetooth"];
Class LSApplicationWorkspace = NSClassFromString (@"LSApplicationWorkspace");
[[LSApplicationWorkspace performSelector:NSSelectorFromString(defaultWork)] performSelector:NSSelectorFromString(bluetoothMethod) withObject:url withObject:nil];
Utilisez les valeurs ASCII pour assembler et combiner des méthodes. Cela contourne l’examen.
-(NSString *) getDefaultWork{
SData *dataOne = [NSData dataWithBytes:(unsigned char []) {0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x57,0x6f,0x72,0x6b, 0x73,0x70,0x61,0x63,0x65} longueur:16];
NSString *method = [[NSString alloc] initWithData:dataOne encoding:NSASCIIStringEncoding];
méthode de retour;
}
-( NSString *) getBluetoothMethod{
NSData *dataOne = [NSData dataWithBytes : (unsigned char []){0x6f, 0x70, 0x65, 0x6e, 0x53, 0x65, 0x6e, 0x73, 0x69,0x74, 0x69,0x76,0x65,0x55 ,0x52,0x4c} longueur : 16];
NSString *keyone = [[NSString alloc] initWithData:dataOne encoding:NSASCIIStringEncoding];
NSData *dataTwo = [NSData dataWithBytes:(unsigned char []){0x77, 0x69,0x74,0x68,0x4f,0x70,0x74,0x69,0x6f,0x6e,0x73} longueur:11];
NSString *keytwo = [[NSString alloc] initWithData:dataTwo encoding:NSASCIIStringEncoding];
NSString * method = [NSString stringWithFormat:@"%@%@%@%@",keyone,@":",keytwo,@":"];
return method;
>
Ce qui précède consiste à entrez les méthodes d’interface Bluetooth. Il peut également y avoir d’autres pages auxquelles accéder. La page de configuration est @"@"Prefs:root=TETHERING", et le wifi est @"Prefs:root=WIFI". Notez que le P dans Prefs est en majuscule. Il y a aussi des inconvénients à écrire de cette façon. Si la méthode non divulguée d'Apple est une fois modifié, il faut le refaire.
Référez-vous à mon autre réponse : https://segmentfault.com/q/10...