2013-02-28 35 views
9

Tôi đã về hoàn thành ứng dụng iOS của tôi, nhưng chỉ cần thêm hai nút:Tôi làm cách nào để thêm nút 'Theo dõi chúng tôi trên facebook' vào ứng dụng iOS?

  • Follow us on facebook
  • Follow us on twitter

tôi cho rằng tôi sẽ tìm thấy một vài đơn giản ví dụ ở đây, nhưng đã rất ngạc nhiên khi không tìm thấy câu trả lời nào cho điều này.

Tôi khá chắc chắn rằng tôi có thể dành vài giờ tiếp theo để tìm ra, nhưng tôi nghĩ rằng tôi sẽ liên hệ với bạn để được trợ giúp một chút.

Chỉ cần tìm mã để đi sau nút trên bộ điều khiển chế độ xem (XCode 4.5.1, iOS 6).

Tôi cho rằng biến duy nhất tôi có thể cần cung cấp là tên tài khoản facebook của công ty.

Mọi đề xuất? (Cảm ơn trước!)

+2

Nút có nên yêu cầu chi tiết đăng nhập Facebook ngay lập tức hay mở ứng dụng Facebook trên trang của công ty? –

+0

Nếu người dùng đã đăng nhập vào facebook (giả sử điều này có thể tồn tại trong iOS), thì tôi muốn nó chỉ mô phỏng hành động của họ trên trang facebook của chúng tôi và tự động nhấp vào nút Thích. Vì vậy, tôi đoán nó sẽ được tự động 'thích' trang facebook của chúng tôi khi họ nhấp vào một nút tôi sẽ được thêm vào. – dcb

Trả lời

1

facebook có một trang về việc thêm một nút, xem vào liên kết này,

https://developers.facebook.com/docs/reference/plugins/follow/

và Twitters là ở đây

https://support.twitter.com/articles/20164833-how-to-add-the-follow-button-to-your-website

hy vọng nó sẽ giúp

+0

Cảm ơn mart87. Tôi ước rằng sẽ làm việc, nhưng tôi không nhìn thấy (sau liên kết facebook) làm thế nào bất cứ điều gì về máy phát điện mã sẽ giúp tôi từ mục tiêu c trong ứng dụng iOS của tôi. Nói cách khác, tôi không thêm nút vào trang web. Tôi đang thêm nó vào một ứng dụng iPhone. Có lẽ tôi sẽ chỉ sử dụng UIWebView nếu tôi không thể tìm ra cách tốt hơn. Cảm ơn một lần nữa! – dcb

16

Đầu tiên, lược đồ URL cho Facebook: fb://profile/<yourpageid> (source). URL có cấu trúc này sẽ mở ứng dụng Facebook, nếu nó được cài đặt.

More on iOS URL schemes.

Khi nút của bạn là khai thác, bạn có thể kiểm tra xem Facebook được cài đặt:

-(IBAction)fbButtonTap:(id)sender { 
    NSURL *fbURL = [[NSURL alloc] initWithString:@"fb://profile/<yourpageid>"]; 
    // check if app is installed 
    if (! [[UIApplication sharedApplication] canOpenURL:fbURL]) { 
     // if we get here, we can't open the FB app. 
     fbURL = ...; // direct URL on FB website to open in safari 
    } 

    [[UIApplication sharedApplication] openURL:fbURL]; 
} 

Đối với twitter, bạn làm theo các bước cơ bản giống nhau. Lược đồ URL Twitter dành cho iOS là twitter://user?id=12345 hoặc twitter://user?screen_name=yourname (source). Một lần nữa, nếu ứng dụng Twitter không được cài đặt, bạn đã mở hồ sơ twitter trong safari.

Đối với hành động trực tiếp, tôi không nghĩ bạn có thể làm điều đó, vì không có kiến ​​thức vốn có về bất kỳ applciation khác được cài đặt trên thiết bị. Điều tốt nhất tôi nghĩ bạn có thể làm là hướng người dùng trực tiếp đến từng tài khoản tương ứng.

0

đây là mã của tôi để cho mọi người thấy thích trang cộng đồng của ứng dụng của tôi.

bạn có thể thêm _webview nơi bạn muốn hiển thị bên trong mã.

facebook cung cấp mã để hiển thị trang bên trong chế độ xem web.

-(void)likeus 
{ 



_webview =[[UIWebView alloc] initWithFrame:CGRectMake(14,94, 292, 250)]; 
AppDelegate *appdelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; 
//Load web view data 
NSString *strWebsiteUlr [email protected]"http://www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2Fenbuyukkim&width=292&height=258&show_faces=true&colorscheme=dark&stream=false&border_color&header=false&appId=433294056715040"; 

// Load URL 

//Create a URL object. 
NSURL *url = [NSURL URLWithString:strWebsiteUlr]; 

//URL Requst Object 
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 

//Load the request in the UIWebView. 
[_webview loadRequest:requestObj]; 
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button addTarget:_webview 
      action:@selector(removeFromSuperView) 
forControlEvents:UIControlEventTouchUpInside]; 
button.frame = CGRectMake(270.0, 80.0, 30.0, 30.0); 
[button setBackgroundImage:[UIImage imageNamed:@"cross.png"] forState:UIControlStateNormal]; 
[_webview addSubview:button]; 

} 
0

Tôi không chắc chắn nếu điều này là những gì bạn đang tìm kiếm, nhưng tôi nghĩ rằng tôi đã tìm thấy các giải pháp, ở đây tại stack overflow trên thread khác.

Hãy xem chủ đề này: Adding the Facebook Like Button in an iPhone App

Hy vọng rằng sẽ giúp bạn!

1

Bạn có thể sử dụng SLRequest để ai đó theo dõi bạn. Điều này sẽ chỉ hoạt động trên iOS 6, mặc dù trên iOS 5 Twitter hoạt động nhưng không hoạt động trên Facebook.

Một ví dụ về SLRequest ai đó để theo bạn trên Twitter, đảm bảo điều này được gọi là trên thread nền:

ACAccountStore *accountStore = [[ACAccountStore alloc] init]; 
    ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter]; 

    [accountStore requestAccessToAccountsWithType:accountType options:nil completion:^(BOOL granted, NSError *error) { 

     if (granted) { 

      // Get the list of Twitter accounts. 
      NSArray *accountsArray = [accountStore accountsWithAccountType:accountType]; 

      // For the sake of brevity, we'll assume there is only one Twitter account present. 
      // You would ideally ask the user which account they want to tweet from, if there is more than one Twitter account present. 
      if ([accountsArray count] > 0) { 
       // Grab the initial Twitter account to tweet from. 
       ACAccount *twitterAccount = [accountsArray objectAtIndex:0]; 

       NSMutableDictionary *tempDict = [[NSMutableDictionary alloc] init]; 
       [tempDict setValue:@"Your twitter name" forKey:@"screen_name"]; 
       [tempDict setValue:@"true" forKey:@"follow"]; 

       SLRequest *followRequest = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:SLRequestMethodPOST URL:[NSURL URLWithString:@"https://api.twitter.com/1/friendships/create.json"] parameters:tempDict]; 

       [followRequest setAccount:twitterAccount]; 
       [followRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) { 
        NSString *output = [NSString stringWithFormat:@"HTTP response status: %i", [urlResponse statusCode]]; 
        NSLog(@"%@", output); 
        if (error) { 
         dispatch_async(dispatch_get_main_queue(), ^{ 
          //Update UI to show follow request failed 
         }); 
        } 
        else { 
         dispatch_async(dispatch_get_main_queue(), ^{ 
          //Update UI to show success 
         }); 
        } 
       }]; 
      } 
     } 
    }]; 

Và đối với Facebook, bạn chỉ cần thay đổi một số của nó và nhìn vào API của họ và thay đổi URL yêu cầu.

Các vấn đề liên quan