2016-06-07 2 views
0

Google은 Google지도에 an iOS SDK을 제공하지만 GoogleMap JavaScript API은 내 앱에서 실현하고 싶은 기능인 custom stylingdata visualisation을 비롯한 더 많은 기능을 제공합니다.iOS 앱에서 GoogleMap JavaScript API를 사용하려면 어떻게해야합니까?

그렇다면이 JavaScript API를 내 앱에서 활용할 수있는 방법이 있습니까?

지도를 WebView에 포함하여 앱에서 자바 스크립트를 사용할 수 있는지 생각 중입니까? 이것이 가능한가? 성능에 어떤 영향을 미칩니 까?

미리 감사드립니다.

답변

1

AFNetworking 프레임 워크를 사용하고 있습니다. 나는 그것의 하위 클래스를 만들었다. CUK_Client는 서브 클래스의 이름입니다.

google api examples 유형 (POST 또는 GET)을 보여줍니다.

필요에 따라 수정할 수 있습니다.

makeRequestGet은 원하는대로 매개 변수와 경로로 호출 할 수있는 일반적인 GET 메서드입니다. 예를 들어 getDirection 메서드에서는 두 좌표 사이에서 방향을 지정하는 데 사용합니다.

.H 파일

@interface CUK_Client : AFHTTPSessionManager 
+ (CUK_Client *) sharedClient; 
+ (CUK_Client *) googleMapsClient; 

- (void)makeRequestGet:(NSString *) route withParamaters:(NSDictionary *)parameters completion:(DefaultIdResultBlock) completion ; 

- (void)getDirection:(NSDictionary *)params completion:(DefaultIdResultBlock) completion; 

- (void)beaconsVisited:(NSArray *)beacons completion:(DefaultIdResultBlock) completion; 
@end 

하는 .m 파일

@implementation CUK_Client 

+ (CUK_Client *) googleMapsClient { 
static CUK_Client *googleMapsClient = nil; 
static dispatch_once_t onceToken; 
dispatch_once (&onceToken ,^{ 
    googleMapsClient = [[self alloc] initWithBaseURL:[NSURL URLWithString:@"http://maps.googleapis.com/"]]; 

}); 

return googleMapsClient; 
} 


    - (void) makeRequestGet:(NSString *) route withParamaters:(NSDictionary *)parameters completion:(DefaultIdResultBlock) completion { 

    [self GET:route 
    parameters:parameters 
     success:^(NSURLSessionDataTask *task, id responseObject) { 

      return completion (nil ,responseObject); 

     } failure:^(NSURLSessionDataTask *task, NSError *error) { 

      return completion ([error localizedDescription] , nil); 
     }]; 
} 

-(void)getDirection:(NSDictionary *)params completion:(DefaultIdResultBlock)completion { 

     [self makeRequestGet:@"maps/api/directions/json" withParamaters:params completion:completion]; 
    } 

@end 
+0

안녕 @Kivannc는 답변 주셔서 감사합니다. 그러나 웹 서비스 API에 대한 HTTP 요청 만하는 것이 아니라 실제로 JavaScript를 직접 실행해야합니다. 그래서 지금은 UIWebiview의 - stringByEvaluatingJavaScriptFromString :을 사용하는 것을 고려 중입니다. https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIWebView_Class/#//apple_ref/occ/instm/UIWebView/stringByEvaluatingJavaScriptFromString : –

관련 문제