100 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Mathematica
		
	
	
	
		
		
			
		
	
	
			100 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Mathematica
		
	
	
	
|  | //
 | ||
|  | //  UUIDManager.m
 | ||
|  | //  Unity-iPhone
 | ||
|  | //
 | ||
|  | //  Created by fotoable on 2020/6/29.
 | ||
|  | //
 | ||
|  | 
 | ||
|  | #import<AudioToolbox/AudioToolbox.h>
 | ||
|  | #import "NativeTool.h"
 | ||
|  | //#import "JKRBDMuteSwitch/RBDMuteSwitch.h"
 | ||
|  | 
 | ||
|  | @implementation NativeTool
 | ||
|  | 
 | ||
|  | BoolResultDel resultDel;
 | ||
|  | 
 | ||
|  | static NativeTool *mInstance;
 | ||
|  | 
 | ||
|  | +(NativeTool *)getInstance
 | ||
|  | {
 | ||
|  |     if (mInstance == nil)
 | ||
|  |     {
 | ||
|  |         mInstance = [[NativeTool alloc] init];
 | ||
|  |     }
 | ||
|  |     return mInstance;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | -(void)shake:(int)pType Intensity:(float)pIntensity
 | ||
|  | {
 | ||
|  |     UIImpactFeedbackStyle tStyle = UIImpactFeedbackStyleLight;
 | ||
|  |     if(pType == 1)
 | ||
|  |     {
 | ||
|  |         tStyle = UIImpactFeedbackStyleMedium;
 | ||
|  |     }
 | ||
|  |     else if(pType == 2)
 | ||
|  |     {
 | ||
|  |         tStyle = UIImpactFeedbackStyleHeavy;
 | ||
|  |     }
 | ||
|  |     
 | ||
|  |     UIImpactFeedbackGenerator *generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:tStyle];
 | ||
|  |     if (@available(iOS 13.0, *))
 | ||
|  |     {
 | ||
|  |         [generator impactOccurredWithIntensity:pIntensity];
 | ||
|  |     }
 | ||
|  |     else
 | ||
|  |     {
 | ||
|  |         [generator impactOccurred];
 | ||
|  |     }
 | ||
|  | }
 | ||
|  | 
 | ||
|  | -(void)shareWithTitle:(NSString *)pTitle Url:(NSString *)pUrl ResultCallback:(nonnull BoolResultDel)pResultDel
 | ||
|  | {
 | ||
|  |     NSMutableArray *sharingItems = [NSMutableArray new];
 | ||
|  |     if (pTitle && pTitle.length > 0)
 | ||
|  |     {
 | ||
|  |         [sharingItems addObject:pTitle];
 | ||
|  |     }
 | ||
|  | //    if (imageDataString && imageDataString.length > 0)
 | ||
|  | //    {
 | ||
|  | //        NSData *imageData = [[NSData alloc] initWithBase64EncodedString:imageDataString options:0];
 | ||
|  | //        UIImage *image = [[UIImage alloc] initWithData:imageData];
 | ||
|  | //
 | ||
|  | //        [sharingItems addObject:image];
 | ||
|  | //    }
 | ||
|  |     if (pUrl && pUrl.length > 0)
 | ||
|  |     {
 | ||
|  |         NSURL *shareUrl = [NSURL URLWithString:pUrl];
 | ||
|  |         [sharingItems addObject:shareUrl];
 | ||
|  |     }
 | ||
|  | 
 | ||
|  |     UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:sharingItems applicationActivities:nil];
 | ||
|  |     activityViewController.popoverPresentationController.sourceView = UnityGetGLViewController().view;
 | ||
|  |     activityViewController.popoverPresentationController.sourceRect = CGRectMake(UnityGetGLViewController().view.frame.size.width/2, UnityGetGLViewController().view.frame.size.height/4, 0, 0);
 | ||
|  |     
 | ||
|  |     activityViewController.modalInPopover = YES;
 | ||
|  |     
 | ||
|  |     //回调
 | ||
|  |     if ([UIDevice currentDevice].systemVersion.floatValue >= 8.0)
 | ||
|  |     {
 | ||
|  |         // ios8.0 之后用此方法回调
 | ||
|  |         UIActivityViewControllerCompletionWithItemsHandler itemsBlock = ^(UIActivityType __nullable activityType, BOOL completed, NSArray * __nullable returnedItems, NSError * __nullable activityError)
 | ||
|  |         {
 | ||
|  |             if(pResultDel != NULL) pResultDel(completed);
 | ||
|  |         };
 | ||
|  |         activityViewController.completionWithItemsHandler = itemsBlock;
 | ||
|  |     }
 | ||
|  |     else
 | ||
|  |     {
 | ||
|  |         // ios8.0 之前用此方法回调
 | ||
|  |         UIActivityViewControllerCompletionHandler handlerBlock = ^(UIActivityType __nullable activityType, BOOL completed)
 | ||
|  |         {
 | ||
|  |             if(pResultDel != NULL) pResultDel(completed);
 | ||
|  |         };
 | ||
|  |         activityViewController.completionHandler = handlerBlock;
 | ||
|  |     }
 | ||
|  | 
 | ||
|  |     [UnityGetGLViewController() presentViewController:activityViewController animated:YES completion:nil];
 | ||
|  | }
 | ||
|  | 
 | ||
|  | @end
 |