AppDelegate+Deeplink.m 1.76 KB
Newer Older
u  
lee committed
1 2 3 4 5 6 7 8 9 10
//
//  AppDelegate+Deeplink.m
//  iCemarose
//
//  Created by Sanchew on 2017/6/29.
//  Copyright © 2017年 kollway. All rights reserved.
//

#import "AppDelegate+Deeplink.h"
#import <JLRoutes/JLRoutes.h>
lee committed
11 12 13
#import "AppDelegate.h"
#import "KWMProductDetailVC.h"
#import "KWMSelectedGoodsVC.h"
u  
lee committed
14 15 16 17 18

@implementation AppDelegate (Deeplink)

- (void)registerRouter {
    JLRoutes *routes = [JLRoutes routesForScheme:@"cemarose"];
lee committed
19 20
    [routes addRoute:@"/collections/:handle/*" handler:^BOOL(NSDictionary<NSString *,id> * _Nonnull parameters) {
        NSArray *tags = [parameters[JLRouteWildcardComponentsKey] componentsSeparatedByString:@"+"];
u  
lee committed
21
        NSLog(@"trace tags %@",[tags componentsJoinedByString:@","]);
lee committed
22
        KWMSelectedGoodsVC * selectedGoodsVC = (KWMSelectedGoodsVC *)[KWMBaseVC findControllerBy:[KWMSelectedGoodsVC kwmTag] fromStoryboard:@"New"];
lee committed
23
        selectedGoodsVC.handle = parameters[@"handle"];
lee committed
24 25
        selectedGoodsVC.ctags = tags;
        [[AppDelegate mainViewController].selectedViewController pushViewController:selectedGoodsVC animated:YES];
u  
lee committed
26 27 28 29
        return YES;
    }];
    [routes addRoute:@"/products/:id" handler:^BOOL(NSDictionary<NSString *,id> * _Nonnull parameters) {
        NSLog(@"product id %@",parameters[@"id"]);
lee committed
30
        KWMProductDetailVC *productDetailVC = (KWMProductDetailVC*)[KWMBaseVC findControllerBy:[KWMProductDetailVC kwmTag] fromStoryboard:@"New"];
lee committed
31
//        productDetailVC.product = brandCell.leftProduct;
lee committed
32 33 34
        productDetailVC.handle = parameters[@"id"];
        NSLog(@"%@",[AppDelegate mainViewController].selectedViewController);
        [[AppDelegate mainViewController].selectedViewController pushViewController:productDetailVC animated:YES];
u  
lee committed
35 36 37 38 39 40 41 42 43
        return YES;
    }];
}

- (BOOL)handleURL:(NSURL *)url {
    return [JLRoutes routeURL:url];
}

@end