2012-03-13 44 views
8

Tôi đang sử dụng SDK Facebook để cho phép người dùng chia sẻ nội dung thông qua ứng dụng của tôi lên Tường của họ. Nó là một thiết lập khá chuẩn với SDK Facebook, nơi một bài viết điển hình sẽ chứa một số văn bản cũng như một hình ảnh để đi kèm với bài viết.Hiển thị hình ảnh chất lượng cao hơn cho các bài đăng trên Facebook cho iOS

Tất cả đều hoạt động tốt, nhưng vấn đề của tôi là vì Facebook thay đổi kích thước và chuyển đổi hình ảnh khi chúng phù hợp, hình ảnh bài trông hơi pixel khi xem trên màn hình Retina. Có ai biết liệu có một cách để đảm bảo rằng Facebook sử dụng một hình ảnh chất lượng cao hơn cho điều này?

Một lần nữa, để làm rõ, hình ảnh ban đầu tôi đang sử dụng có chất lượng đủ cao, nhưng Facebook làm giảm bớt một chút quá nhiều, và kết quả là chúng không quá đẹp trên màn hình Retina. Chúng ta có thể tránh điều này theo cách nào đó không?

Dưới đây là trích đoạn từ mã đăng bài Facebook khá chuẩn mà tôi đang sử dụng;

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
            sharingURL, @"link", 
            sharingTitle, @"name", 
            @" ", @"caption", 
            description, @"description", 
            actions, @"actions", 
            picture, @"picture", 
            nil]; 

[facebook dialog:@"feed" andParams:params andDelegate:self]; 

Lưu ý rằng hình ảnh tôi đang liên kết là khoảng 250x250px JPG, nếu có ích.

EDIT: Đã thêm hình ảnh mẫu để làm rõ ý tôi. Tôi đang cố gắng để xem nếu có một cách để yêu cầu Facebook để sử dụng một hình ảnh độ phân giải cao cho võng mạc hiển thị ở đây.

Post image and how it looks on FB

Cảm ơn bạn trước!

+0

Bạn đang sử dụng mã nào để lấy hình ảnh và hiển thị sau này trong ứng dụng của mình? Facebook lưu trữ nhiều kích cỡ của mỗi bức ảnh. Bạn thường có thể có được phiên bản chất lượng cao hơn với tham số chuỗi truy vấn đơn giản, nhưng nó phụ thuộc vào cách bạn nhận lại hình ảnh. –

+0

@Inturbidus, Cảm ơn bạn đã biết thông tin, nhưng tôi không nói về việc chụp ảnh từ Facebook từ ứng dụng của tôi; thay vào đó, tải lên/chia sẻ nội dung thông qua ứng dụng của tôi lên FB. Tôi đã thêm một pic để làm rõ thêm những gì tôi cần. – Madhu

+0

Ah tôi xin lỗi, tôi hiểu lầm. –

Trả lời

1

Bạn có thể cập nhật Ảnh của mình trong album ảnh của người dùng. Điều này cũng sẽ dẫn đến một bài tường. (Nếu điều đó cũng phù hợp trong trường hợp của bạn.) Đó sẽ là các mã:

// save image as data 
UIImage* image = [...]; 
NSData *imageData = UIImageJPEGRepresentation(image, 0.8); 
[params setValue: imageData forKey: @"source"]; 

// send post request 
Facebook* facebook = [...]; 
[facebook requestWithGraphPath: @"me/photos" andParams: params andHttpMethod: @"POST" andDelegate: delegate]; 

(Lưu ý: Tải Lên hình ảnh cho album phải nhỏ hơn 960px mỗi bên xem:. Facebook Documentation)

+0

Cảm ơn bạn rất nhiều vì đã dành thời gian cho jaydee. Bạn đang đề cập đến việc đăng ảnh lên tường của ai đó? Tôi đã thêm một pic mẫu trong câu hỏi của tôi cho rõ ràng, chỉ trong trường hợp Q không quá rõ ràng. – Madhu

+0

cũng đây chỉ là một ý tưởng khác, làm thế nào để mang lại hình ảnh chất lượng cao hơn cho facebook. im không đề cập đến một wallpost thực tế, nhưng một wallpost tự động sẽ được tạo ra, khi một người dùng tải lên hình ảnh. Tôi đoán bạn * không thể * thay đổi kích thước hình ảnh facebook mặc định cho wallposts. – calimarkus

+0

Tôi đồng ý. Vẫn chưa có câu trả lời cho điều này tôi sợ, nhưng có vẻ như không có cách nào để làm việc này. Tôi sẽ để lại câu hỏi không được trả lời, nhưng thấy rằng tiền thưởng sẽ hết hạn trong một giờ, tôi sẽ chỉ cần đưa vào ya. Không có lý do để cho nó đi đến lãng phí :) – Madhu

0
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2)  
{  
    //iPhone 4 
    //Use @2x images here 
    NSLog(@"iPhone 4"); 
} 
else 
{ 
    //iPhone 3 or earlier 
    //Use original images here 
    NSLog(@"iPhone 3 or earlier"); 
} 


//May this will help you. 

Tôi sẽ đề nghị bạn thay đổi nguồn của hình ảnh theo thiết bị thay vì làm cho nó phụ thuộc vào FB.

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