2013-01-09 21 views
21

Một liên kết sẽ mở ứng dụng. Tôi đã có để làm việc. Tôi chỉ muốn biết cách chuyển một tham số. Giả sử url là "addappt: //? Code = abc". Khi bộ điều khiển chế độ xem bật lên, một trường mã phải có văn bản được điền - các chữ cái sau dấu bằng để ký. Tôi đã có một phần của điều này để làm việc. Tôi sử dụng sau (in app delegate.m):Mở ứng dụng iOS từ URL VÀ Vượt qua tham số

NSArray *elements = [url.query componentsSeparatedByString:@"="]; 
NSString *key = [[elements objectAtIndex:0] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
      val = [[elements objectAtIndex:1] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

(BTW: val được khai báo trong appdelegate.h

Tôi cũng có thể vượt qua val với bộ điều khiển xem vấn đề duy nhất của tôi là Populating textfield, tên 'code'.. làm thế nào bạn có thể cư mã như ngay sau khi ứng dụng được mở bởi liên kết?

giúp đánh giá cao.

+1

Đừng cần. Tôi chỉ cần 'code' dân cư – DHShah01

+1

Tôi biết làm thế nào để cư nó, chỉ cần biết phương pháp – DHShah01

+1

Trong AppDelegate, có" viewController.code setText: val; ", giả định rằng mã là một trường văn bản và có sẵn như là một tài sản của viewController. – Srikanth

Trả lời

21

đây là một hướng dẫn tốt đẹp về Using Custom URL Scheme in iOS

Như trong hướng dẫn này, bạn nên phân tích các thông số URL và lưu trữ chúng để sử dụng trong các ứng dụng trong phương pháp này:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { 
    // Do something with the url here 
} 
+1

liên kết hướng dẫn của bạn chỉ quay lại bài đăng SO này! –

+1

@AmoghTalpallikar Xin lỗi vì điều đó. Cảm ơn đã chỉ ra điều đó. Nó sẽ hoạt động tốt ngay bây giờ. –

+0

Cảm ơn bạn đã chỉnh sửa :) –