Π ΡΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π΄Π΅Π»Π΅Π³Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ executingInBackground. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π·Π°Π΄Π°ΠΌ ΡΡΠΎΠΌΡ Π΄Π΅Π»Π΅Π³Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ YES, Π° ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ Π²Π΅ΡΠ½Π΅ΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ β ΠΈΠ·ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° NO. ΠΠΎΠ³Π΄Π° Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ± ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π³Π΅ΠΎΠ»ΠΎΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΡ Core Location, ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΡΠΎΡ ΡΠ»Π°Π³. ΠΡΠ»ΠΈ ΡΠ»Π°Π³ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² YES, ΡΠΎ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌΠΈ ΡΠ½Π΅ΡΠ³ΠΎΠ΅ΠΌΠΊΠΈΠΌΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ Π»ΡΠ±ΡΠΌΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΡ, Π±ΡΠ΄ΡΡΠΈ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ, Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π½Π°Π³ΡΡΠΆΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌΠΈ ΡΡΠΆΠ΅Π»ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΡΠΎ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π²ΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΌΠΎΡΠ½ΠΎΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π±ΡΠΎΡΠΈΡΡ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠΎΠ³Π΄Π° ΠΆΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΡ ΠΎΠ΄ΠΈΡ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, ΡΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠ΅Π»ΠΎ ΡΠ½ΠΈΠ·ΠΈΡΡ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π³Π΅ΠΎΠ»ΠΎΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅Π½ΡΠΎΡΡ. ΠΡΠ°ΠΊ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
@interface AppDelegate () <CLLocationManagerDelegate>
@property (nonatomic, strong) UIWindow *window;
@property (nonatomic, strong) CLLocationManager *myLocationManager;
@property (nonatomic, unsafe_unretained, getter=isExecutingInBackground)
BOOL executingInBackground;
@end
@implementation AppDelegate
<# ΠΡΡΠ°ΡΠΎΠΊ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π΄Π΅ΡΡ #>
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ Π΅Π³ΠΎ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
β (BOOL) application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
self.myLocationManager = [[CLLocationManager alloc] init];
self.myLocationManager.desiredAccuracy = kCLLocationAccuracyBest;
self.myLocationManager.delegate = self;
[self.myLocationManager startUpdatingLocation];
self.window = [[UIWindow alloc] initWithFrame:
[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΆΠ΅Π»Π°Π΅ΠΌΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π²ΡΡΠΎΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π»ΡΡΡΠ΅ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° iOS:
β (void)applicationDidEnterBackground:(UIApplication *)application{
self.executingInBackground = YES;
/* Π‘Π½ΠΈΠΆΠ°Π΅ΠΌ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΡ
Π½Π° iOS, ΠΏΠΎΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. */
self.myLocationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
}
ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²Π΅ΡΠ½Π΅ΡΡΡ ΠΈΠ· ΡΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ, ΡΠΎΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π½ΡΡΡ Π΄ΠΎ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ:
β (void)applicationWillEnterForeground:(UIApplication *)application{
self.executingInBackground = NO;
/* Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΠ½ΡΠ»ΠΎΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, ΠΏΠΎΠ²ΡΡΠ°Π΅ΠΌ
ΡΠΎΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. */
self.myLocationManager.desiredAccuracy = kCLLocationAccuracyBest;
}
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π»ΡΠ±ΠΎΠΉ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΡΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ: ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΈ ΡΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. ΠΠΎΡΡΠΎΠΌΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ locationManager: didUpdateToLocation: fromLocation: Π΄Π΅Π»Π΅Π³Π°ΡΠ° Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
β (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation{
if ([self isExecutingInBackground]){
/* Π Π°Π±ΠΎΡΠ°Π΅ΠΌ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
ΠΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ. */
} else {
/* Π Π°Π±ΠΎΡΠ°Π΅ΠΌ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Π»ΡΠ±ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ,
ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠ΅Π±ΡΡΡΡΡ */
}
}
ΠΡΠΎΡΡΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ, ΡΠ°Π±ΠΎΡΠ°Ρ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½ΠΈΡ Π½ΡΠΆΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΠΌΡ, ΡΠ½ΠΈΠΆΠ°Ρ ΡΠΎΡΠ½ΠΎΡΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΌΡ ΡΠ½ΠΈΠΆΠ°Π΅ΠΌ ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° iOS, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ Π³Π΅ΠΎΠ»ΠΎΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, Π² ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠΈΠΌΡΠ»ΡΡΠΎΡΠ° iOS Π²Ρ ΡΠ΅ΡΡΠΈΡΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ², Π²Π»ΠΈΡΡΡΠΈΡ Π½Π° ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΎΠ½ΠΎΠ²Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Ρ ΠΎΠ΄Π΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π° Π½Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.
14.6. Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ iOS, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΡ
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ iOS Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΠ»ΠΎΡΡ ΠΈ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΎΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΠ½Π΅ΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΠΉΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° UIApplicationDelegate, ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π΄Π΅Π»Π΅Π³Π°ΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΠ»Π°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ° iOS. Π’Π°ΠΊ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΏΡΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ iOS (ΡΠΎ Π΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠΊΠ½ΠΎΠΌ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π΅ΡΠ΅ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ ΠΊΠΎΠ΄) Π²ΠΏΠ΅ΡΠ²ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Ρ iOS, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ Π² ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²ΠΏΠ΅ΡΠ²ΡΠ΅, Π° Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΈΠ· ΡΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ UIApplicationDelegate Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
1. application: didFinishLaunchingWithOptions:.
2. applicationDidBecomeActive:.
ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ ΠΊΠ½ΠΎΠΏΠΊΡ Home (ΠΠΎΠΌΠΎΠΉ) Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Ρ iOS, ΡΠΎ Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
1. applicationWillResignActive:.
2. applicationDidEnterBackground:.
ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π΄Π²Π°ΠΆΠ΄Ρ Π½Π°ΠΆΠ°ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Home (ΠΠΎΠΌΠΎΠΉ) ΠΈ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΡΠΎΠ½ΠΎΠ²ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. (ΠΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΡΠ°ΠΊ ΡΠΆ Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ½Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π°ΡΠ΅ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ URI-ΡΡ Π΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π² Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅.) ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²Π΅ΡΠ½Π΅ΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π΄Π΅Π»Π΅Π³Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
1. applicationWillEnterForeground:.
2. applicationDidBecomeActive:.
ΠΠ°ΡΡΠ΄Ρ Ρ ΡΡΠΈΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎΡ iOS, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ.
Π§ΡΠΎΠ±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈ Π²Π½ΠΎΠ²Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΡΠΆΠ½ΠΎ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ Π²Π·Π²Π΅ΡΠΈΠ²Π°ΡΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΈΡ Π·Π°Π΄Π°Ρ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π° Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ β Π»ΠΈΡΡ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²Π΅ΡΠ½Π΅ΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ. Π‘Π°ΠΌΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π½Π΅ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ, Π΅ΡΠ»ΠΈ ΠΊΠ°ΡΠ°Π΅ΠΌ ΡΠ°ΠΉΠ» ΠΈΠ· Π‘Π΅ΡΠΈ. ΠΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΈΡΠ΅ΠΌ ΠΈΠ³ΡΡ, Π»ΡΡΡΠ΅ ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ iOS Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅ΠΉ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΈ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎ Π½Π° Π½ΠΈΡ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Β«ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π½Π° ΠΏΠ°ΡΠ·ΡΒ» ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ. ΠΡΠΎ ΠΆΠ΅ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄Π΅Π»Π°ΡΡ ΠΈ ΡΠΎ Π·Π²ΡΠΊΠΎΠ²ΡΠΌ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ ΠΎΠΊΠΎΠ»ΠΎ 10 ΡΠ΅ΠΊΡΠ½Π΄, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ Π½Π΅ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΏΡΠΈΠ³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 14.2).
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΌΡ ΠΏΠΈΡΠ΅ΠΌ ΠΈΠ³ΡΡ Π΄Π»Ρ iOS. ΠΠΎΠ³Π΄Π° ΠΈΠ³ΡΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅.
1. ΠΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ.
2. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π° Π΄ΠΈΡΠΊ ΠΎΡΠΊΠΈ, Π·Π°ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ.
3. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π° Π΄ΠΈΡΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΡΡΠΎΠ²Π½Π΅, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ»Π°ΡΡ ΠΈΠ³ΡΠ°. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π±ΡΠ΄Π΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠΎΡΠΊΡ, ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΡΡΠΈΠ³ Π½Π° ΡΡΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΡΡΠΎΠ²Π½Ρ, ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΈ Ρ. Π΄.
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ½ΠΎΠ²Π° ΠΎΡΠΊΡΠΎΠ΅Ρ ΠΈΠ³ΡΡ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅.
1. ΠΠ°Π³ΡΡΠ·ΠΈΡΡ Ρ Π΄ΠΈΡΠΊΠ° Π·Π°ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΎΡΠΊΠΈ.
2. ΠΠ°Π³ΡΡΠ·ΠΈΡΡ Ρ Π΄ΠΈΡΠΊΠ° ΡΠΎΡ ΡΡΠΎΠ²Π΅Π½Ρ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅ΡΠ²Π°Π» ΠΈΠ³ΡΡ.
3. ΠΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ°.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π΄Π΅Π»Π΅Π³Π°Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β ΡΡΠΎ ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ. ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π΄Π΅Π»Π΅Π³Π°ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²: