2013-03-11 35 views
14

Tôi có câu hỏi về việc sử dụng tìm kiếm của Google. Tôi có thể sử dụng tìm kiếm google tùy chỉnh trong ứng dụng iOS gốc của mình thay vì sử dụng các công cụ api của họ không, đây có phải là vấn đề đối với Google không?Chính sách tìm kiếm của Google

tôi viết trang html (http://barzyczak.vot.pl/search.html?q=test):

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Element V2: Results Only Layout Demo</title> 

     <!-- Put the following javascript before the closing </head> tag. --> 
     <script> 
      (function() { 
      var cx = 'xyz'; 
      var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true; 
      gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + 
      '//www.google.com/cse/cse.js?cx=' + cx; 
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s); 
      })(); 
      </script> 
    </head> 

    <body> 
     <!-- Place this tag where you want the search results to render --> 
     <gcse:searchresults-only enableOrderBy="false"></gcse:searchresults-only> 
    </body> 

tôi làm theo yêu cầu vào trang web với nội dung nêu trên trong ứng dụng iOS của tôi và nhận được kết quả. Tôi thấy kết quả này trong UIWebView:

enter image description here

Vì vậy, tôi có thể sử dụng

- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationTyp 

và chuyển hướng người dùng đến UIViewController của tôi? Điều này có phù hợp với chính sách của Google không?

Tôi có thể chặn/bắt người dùng nhấp vào liên kết và mở chế độ xem ứng dụng gốc thay vì xem web hay tôi nên mở trang mong muốn trong chế độ xem web và sau đó chuyển hướng (với mã 301) bằng URL lược đồ iOS, mở chế độ xem ứng dụng gốc (để thực sự mô phỏng nhấp chuột trong google)?

Ps. Tôi biết về Google API, nhưng điều này không ổn cho tôi.

+0

Tôi không nghĩ chính sách của google có liên quan đến nơi bạn điều hướng trong ứng dụng của mình! – nsgulliver

+0

Nhưng tôi có thể điều hướng quảng cáo Google trong kết quả tìm kiếm không? :) –

+0

Quảng cáo thường là hai liên kết đầu tiên, mặc dù Google có thể không thích nó nếu bạn bỏ qua các quảng cáo – GangstaGraham

Trả lời

2

Điều khoản dịch vụ tìm kiếm tùy chỉnh của Google (TOS) có thể được tìm thấy tại http://www.google.com/cse/docs/tos.html. Tôi sẽ đề nghị đọc kỹ lưỡng. Cụ thể phần 1.3 mà tôi đã sao chép (kể từ ngày 17 tháng 3 năm 2013):

1.3 Nghĩa vụ của bạn. Bạn sẽ nhận được một Truy vấn từ Người dùng Cuối và chuyển tiếp Truy vấn đó tới Google. Bạn không được theo bất kỳ cách nào, bộ nhớ cache hoặc sửa đổi Kết quả được tạo bởi Google, ngoại trừ nếu không thì đã đồng ý giữa Bạn và Google. Google sẽ không chịu trách nhiệm về việc nhận Truy vấn từ Người dùng Cuối hoặc để truyền dữ liệu giữa Bạn và giao diện mạng của Google. Bạn phải chịu trách nhiệm cho cung cấp tất cả phần cứng và phần mềm cần thiết để thực hiện các nghĩa vụ theo Điều khoản sử dụng, bao gồm nhưng không giới hạn ở như sau: (a) thực hiện và duy trì Trang web, (b) triển khai và duy trì giao diện giữa Trang web và Dịch vụ và (c) nhận được Truy vấn từ Người dùng Cuối và truyền Truy vấn đến Google.

Tôi không phải là luật sư, nhưng "Bạn không được theo bất kỳ cách nào, bộ nhớ cache hoặc sửa đổi Kết quả được tạo bởi Google, trừ khi có thỏa thuận khác giữa Bạn và Google." có vẻ quan trọng trong tình huống của bạn.

Trừ khi bạn thanh toán cho Google Site Search, bạn không thể hiển thị kết quả mà không hiển thị quảng cáo.

2

UIWebView tương tự như trình duyệt Safari.

Vì vậy, nếu bạn đang tải bất kỳ URL nào trong UIWebView, thì đừng lo lắng. Tải yêu cầu với bất kỳ url nào trong UIWebView cũng giống như dán url trong trình duyệt để không cần phải lo lắng. Nhưng nếu bạn muốn mở quảng cáo của google trong UIViewController hoặc với bất kỳ kiểm soát nào khác như nhãn (ví dụ: bạn đang hiển thị quảng cáo trên UILabel hoặc UITextView) thì có nên là vấn đề với chính sách.

Tôi không chắc chắn về chính sách của Google, nhưng nếu bạn chỉ sử dụng UIWebView thì không cần phải lo lắng. Đi trước .........

Và cho các tìm kiếm google tôi đã sử dụng một url mà bạn có thể thử ....

NSString * urlString = [NSString stringWithFormat:@"https://www.google.co.in/webhp#hl=en&sugexp=les%%3B&gs_nf=1&tok=LZGxyqNyXgb5XCemHei1Fg&cp=4&gs_id=g&xhr=t&q=%@", self.txtSearch.text]; 
    [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlString]]]; 

Hope bài này sẽ giúp bạn ..... .........

có một hạnh phúc mã hóa ...........

EDIT: - BẠN KHÔNG THỂ THỰC HIỆN GIAO DỊCH TIỀN TRÊN WebView (có lẽ vì APPLE CỦA In- CHÍNH SÁCH MUA APP)

1

Từ sốhiện tại của Google:

sử dụng dịch vụ của chúng tôi

Bạn phải làm theo bất kỳ chính sách tạo sẵn cho bạn trong vòng Services.

Đừng lạm dụng Dịch vụ của chúng tôi. Ví dụ: không can thiệp vào các Dịch vụ của chúng tôi hoặc thử truy cập chúng bằng một phương thức khác với giao diện và hướng dẫn mà chúng tôi cung cấp.

Điều này, đối với tôi, hơi đáng ngờ. Việc tải kết quả tìm kiếm từ URL bạn đã xây dựng có lập trình hay không sử dụng giao diện mà họ cung cấp đều có thể tranh cãi, nhưng trong cách diễn giải của tôi, có vẻ ok, miễn là bạn đang tải yêu cầu theo số UIWebView. Nếu bạn phân tích cú pháp html bằng cách nào đó để trình bày các kết quả theo một cách khác, chẳng hạn như một ví dụ UITableView, thì tôi nghĩ rằng nó vượt qua dòng.

Tôi đang làm việc trên một ứng dụng mà tôi làm một điều rất giống với những gì bạn đang cố gắng làm. Tôi hiển thị kết quả tìm kiếm trong một số UIWebView và nếu người dùng nhấp vào một liên kết, nó sẽ được mở trong một UIWebView trong một khác nhau ViewController. Nhưng tôi sử dụng một công cụ tìm kiếm khác, và tôi đã thực hiện tùy chọn yêu cầu họ trước và họ đồng ý rằng nó là ok.