위챗 모멘트api 사용

4219 단어
1. 위챗에서 공공 개발 플랫폼을 개발하고 응용 프로그램을 등록한다(APPid 획득).
2. 위챗api를 프로젝트에 가져오기(이 세 파일libWeChatSDK.a, WXApiObject.h, WXApi.h)
3. 관련 라이브러리 파일 가져오기(공식 문서에 상세한 정보가 있음) 오류가 발생하면libc++ 가져오기를 검사합니다.dylib 이 라이브러리는 없습니다
4. appdelegate 파일에서 #import "wxapi.h"파일 가져오기
5. 프로그램 등록(이하 몇 가지 방법이 appdelegate에서 실현되는 몇 가지 방법)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    
  BOOL success = [WXApi registerApp:APPID];
    if (success) {
        NSLog(@"  ");
    }else{
        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"  " message:@"     " delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"ok", nil];
        [alert show];
    }
    return YES;
}
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
    return [WXApi handleOpenURL:url delegate:self];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
    return [WXApi handleOpenURL:url delegate:self];
}
- (void)onReq:(BaseReq *)req{
    
}
- (void)onResp:(BaseResp *)resp{
    if ([resp isKindOfClass:[SendMessageToWXResp class]]) {
        NSString *message = nil;
        switch (resp.errCode) {
            case 0:
                message = @"    ";
                break;
                case -1:
                message = @"    ";
                
            default:
                break;
        }
        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"  " message:message delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"ok", nil];
        [alert show];
    }
}

6. 공유가 필요한 곳에 창설
4
- (IBAction)goShare:(id)sender{
  //          ,     if     
    if (originalImage == nil) {
//        [self showAlertWithTitle:@"  " message:@"       "];
        _scene = WXSceneTimeline;
        SendMessageToWXReq *req = [[SendMessageToWXReq alloc]init];
        req.text = @"       ";
        req.bText = YES;
        req.scene = _scene;
        [WXApi sendReq:req];
        return;
    }
    _scene = WXSceneTimeline;
    if (![WXApi isWXAppInstalled]) {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"  " message:@"              " delegate:nil cancelButtonTitle:@"  " otherButtonTitles:nil, nil];
        [alert show];
        return;
    }else if (![WXApi isWXAppSupportApi]){
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"  " message:@"           ,          " delegate:nil cancelButtonTitle:@"  " otherButtonTitles:nil, nil];
        [alert show];
        return;
    }
 //         
 WXMediaMessage *message = [WXMediaMessage message];
   //     (        32k)
    UIImage *changeimage = [self scaleImage:originalImage toScale:0.1];
    
    [message setThumbImage:changeimage];
    
    NSData *imagedata = UIImageJPEGRepresentation(originalImage, 1);
    WXImageObject *ext = [WXImageObject object];
    ext.imageData = imagedata;
    
    message.description = @"        ";
    message.mediaObject = ext;
    message.mediaTagName = @"WECHAT_TAG_JUMP_APP";
    message.messageExt = @"           ";
    message.messageAction = @"dotalist";
    
    SendMessageToWXReq* req = [[SendMessageToWXReq alloc] init];
    req.bText = NO;
    req.text = @"       ";
    req.message = message;
    req.scene = _scene;
    
    [WXApi sendReq:req];

}
//축소판 그림 생성 방법
- (UIImage *)scaleImage:(UIImage *)image toScale:(float)scaleSize
{
    UIGraphicsBeginImageContext(CGSizeMake(image.size.width*scaleSize,image.size.height*scaleSize));
    [image drawInRect:CGRectMake(0, 0, image.size.width * scaleSize, image.size.height *scaleSize)];
    UIImage *scaledImage = UIGraphicsGetImageFromCurrentImageContext();
                                UIGraphicsEndImageContext();
    return scaledImage;
    
}

이것은 기본적인 위챗 공유 작업이다

좋은 웹페이지 즐겨찾기