คุณสามารถผสานการทำงานการแชร์เข้ากับแอพ Android และ iOS ของคุณเพื่อให้ผู้ใช้สามารถแชร์เนื้อหาของคุณเป็นสตอรี่บน Instagram ได้ หากต้องการสร้างแอพใหม่ โปรดดูที่การเริ่มต้นใช้งาน Facebook SDK สำหรับ Android และการเริ่มต้นใช้งาน Facebook SDK สำหรับ iOS

ตั้งแต่เดือนมกราคม 2023 เป็นต้นไป คุณต้องระบุ ID ของแอพ Facebook เพื่อแชร์เนื้อหาไปยัง Instagram Stories โปรดดูข้อมูลเพิ่มเติมที่ขอแนะนำการอัพเดตการแชร์ไปยังสตอรี่บน Instagram ครั้งสำคัญ หากคุณไม่ได้ระบุ ID ของแอพ ผู้ใช้ของคุณจะเห็นข้อความแสดงข้อผิดพลาดว่า "แอพที่คุณแชร์มาไม่รองรับการแชร์ไปยังสตอรี่ในขณะนี้" เมื่อพยายามแชร์เนื้อหาไปยัง Instagram หากต้องการหา ID ของแอพ โปรดดูรับ ID ของแอพของคุณ (Android) และรับ ID ของแอพของคุณ (iOS)
แอพของคุณสามารถส่งรูปภาพ วิดีโอ และสติกเกอร์ไปยังแอพ Instagram ได้โดยใช้ Implicit Intent ของ Android และแผน URL แบบกำหนดเองของ iOS แอพ Instagram จะได้รับเนื้อหานี้และโหลดลงในตัวปรับแต่งเรื่องราวเพื่อให้ผู้ใช้สามารถเผยแพร่เนื้อหาดังกล่าวไปยัง Instagram Stories ของตนได้
![]() | ตัวปรับแต่งสตอรี่ของแอพ Instagram ประกอบด้วยเลเยอร์พื้นหลังและเลเยอร์สติกเกอร์ เลเยอร์พื้นหลังเลเยอร์พื้นหลังจะเติมเต็มหน้าจอและคุณจะสามารถปรับแต่งได้ด้วยรูปภาพ วิดีโอ สีทึบ หรือการไล่ระดับสีได้ เลเยอร์สติกเกอร์เลเยอร์สติกเกอร์จะมีรูปภาพ และเลเยอร์นี้สามารถปรับแต่งเพิ่มเติมโดยผู้ใช้ภายในตัวปรับแต่งสตอรี่ได้ |
การนำไปใช้งานของ Android นั้นใช้ Implicit Intent เพื่อเปิดใช้งานแอพ Instagram และส่งเนื้อหาไปยังแอพ โดยทั่วไป ขั้นตอนการแชร์ของคุณควรจะเป็นดังนี้
คุณส่งข้อมูลต่อไปนี้เมื่อคุณแชร์ไปยังสตอรี่
| เนื้อหา | ประเภท | คำอธิบาย |
|---|---|---|
ID ของแอพ Facebook | สตริง | ID ของแอพ Facebook ของคุณ |
องค์ประกอบที่เป็นพื้นหลัง | Uri สำหรับองค์ประกอบที่เป็นรูปภาพ (JPG, PNG) หรือองค์ประกอบที่เป็นวิดีโอ (H.264, H.265, WebM) ขนาดขั้นต่ำ 720x1280 อัตราส่วนภาพที่แนะนำคือ 9:16 หรือ 9:18 วิดีโอสามารถมีความละเอียด 1080p และมีระยะเวลาสูงสุด 20 วินาที URI ต้องเป็น URI เนื้อหาไปยังไฟล์ในเครื่องบนอุปกรณ์ คุณต้องส่งองค์ประกอบพื้นหลัง องค์ประกอบสติกเกอร์ หรือทั้ง 2 อย่าง | |
องค์ประกอบที่เป็นสติกเกอร์ | Uri สำหรับองค์ประกอบที่เป็นรูปภาพ (JPG, PNG) ขนาดที่แนะนำ: 640x480 รูปภาพนี้จะปรากฏขึ้นเป็นสติกเกอร์บนพื้นหลัง URI ต้องเป็น URI เนื้อหาไปยังไฟล์ในเครื่องบนอุปกรณ์ คุณต้องส่งองค์ประกอบพื้นหลัง องค์ประกอบสติกเกอร์ หรือทั้ง 2 อย่าง | |
สีด้านบนของเลเยอร์พื้นหลัง | สตริง | ค่าสีของสตริงเลขฐานสิบหกที่ใช้ร่วมกับค่าสีด้านล่างของเลเยอร์พื้นหลัง หากค่าทั้งสองมีค่าเท่ากัน เลเยอร์พื้นหลังจะเป็นสีทึบ หากค่าทั้ง 2 นี้แตกต่างกัน ระบบจะใช้ค่าทั้งสองในการไล่ระดับสี หากคุณระบุองค์ประกอบพื้นหลัง ระบบจะใช้องค์ประกอบดังกล่าวและไม่สนใจค่านี้ |
สีด้านล่างของเลเยอร์พื้นหลัง | สตริง | ค่าสีของสตริงเลขฐานสิบหกจะใช้ร่วมกับค่าสีด้านบนของเลเยอร์พื้นหลัง หากค่าทั้งสองมีค่าเท่ากัน เลเยอร์พื้นหลังจะเป็นสีทึบ หากค่าทั้ง 2 นี้แตกต่างกัน ระบบจะใช้ค่าทั้งสองในการไล่ระดับสี หากคุณระบุองค์ประกอบพื้นหลัง ระบบจะใช้องค์ประกอบดังกล่าวและไม่สนใจค่านี้ |
ตัวอย่างโค้ดต่อไปนี้จะส่งรูปภาพไปยัง Instagram เพื่อให้ผู้ใช้สามารถเผยแพร่ไปยัง Instagram Stories ของตนได้
// Instantiate an intent
Intent intent = new Intent("com.instagram.share.ADD_TO_STORY");
// Attach your App ID to the intent
String sourceApplication = "1234567"; // This is your application's FB ID
intent.putExtra("source_application", sourceApplication);
// Attach your image to the intent from a URI
Uri backgroundAssetUri = Uri.parse("your-image-asset-uri-goes-here");
intent.setDataAndType(backgroundAssetUri, MEDIA_TYPE_JPEG);
// Grant URI permissions for the image
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
// Instantiate an activity
Activity activity = getActivity();
// Verify that the activity resolves the intent and start it
if (activity.getPackageManager().resolveActivity(intent, 0) != null) {
activity.startActivityForResult(intent, 0);
} ตัวอย่างนี้จะส่งองค์ประกอบที่เป็นรูปภาพเลเยอร์สติกเกอร์และชุดสีเลเยอร์พื้นหลังไปยัง Instagram หากคุณไม่ระบุสีเลเยอร์พื้นหลัง สีของเลเยอร์พื้นหลังจะเป็น #222222
// Instantiate an intent
Intent intent = new Intent("com.instagram.share.ADD_TO_STORY");
// Attach your App ID to the intent
String sourceApplication = "1234567"; // This is your application's FB ID
intent.putExtra("source_application", sourceApplication);
// Attach your sticker to the intent from a URI, and set background colors
Uri stickerAssetUri = Uri.parse("your-image-asset-uri-goes-here");
intent.setType(MEDIA_TYPE_JPEG);
intent.putExtra("interactive_asset_uri", stickerAssetUri);
intent.putExtra("top_background_color", "#33FF33");
intent.putExtra("bottom_background_color", "#FF00FF");
// Instantiate an activity
Activity activity = getActivity();
// Grant URI permissions for the sticker
activity.grantUriPermission(
"com.instagram.android", stickerAssetUri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
// Verify that the activity resolves the intent and start it
if (activity.getPackageManager().resolveActivity(intent, 0) != null) {
activity.startActivityForResult(intent, 0);
}ตัวอย่างนี้จะส่งองค์ประกอบที่เป็นรูปภาพเลเยอร์พื้นหลังและองค์ประกอบที่เป็นรูปภาพเลเยอร์สติกเกอร์ไปยัง Instagram
// Instantiate an intent
Intent intent = new Intent("com.instagram.share.ADD_TO_STORY");
// Attach your App ID to the intent
String sourceApplication = "1234567"; // This is your application's FB ID
intent.putExtra("source_application", sourceApplication);
// Attach your image to the intent from a URI
Uri backgroundAssetUri = Uri.parse("your-background-image-asset-uri-goes-here");
intent.setDataAndType(backgroundAssetUri, MEDIA_TYPE_JPEG);
// Attach your sticker to the intent from a URI
Uri stickerAssetUri = Uri.parse("your-sticker-image-asset-uri-goes-here");
intent.putExtra("interactive_asset_uri", stickerAssetUri);
// Grant URI permissions for the image
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
// Instantiate an activity
Activity activity = getActivity();
// Grant URI permissions for the sticker
activity.grantUriPermission(
"com.instagram.android", stickerAssetUri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
// Verify that the activity resolves the intent and start it
if (activity.getPackageManager().resolveActivity(intent, 0) != null) {
activity.startActivityForResult(intent, 0);
}การนำไปใช้งานของ iOS นั้นใช้แผน URL แบบกำหนดเองเพื่อเปิดใช้งานแอพ Instagram และส่งเนื้อหาไปยังแอพ โดยทั่วไป ขั้นตอนการแชร์ของคุณควรจะเป็นดังนี้
คุณส่งข้อมูลต่อไปนี้เมื่อคุณแชร์ไปยังสตอรี่
| เนื้อหา | ประเภท | คำอธิบาย |
|---|---|---|
ID ของแอพ Facebook | ID แอพ Facebook ของคุณ | |
องค์ประกอบที่เป็นรูปภาพพื้นหลัง | ข้อมูลสำหรับองค์ประกอบที่เป็นรูปภาพในรูปแบบที่รองรับ (JPG, PNG) ขนาดขั้นต่ำ 720x1280 อัตราส่วนภาพที่แนะนำคือ 9:16 หรือ 9:18 คุณต้องส่งองค์ประกอบพื้นหลัง (รูปภาพหรือวิดีโอ) องค์ประกอบสติกเกอร์ หรือทั้ง 2 อย่างไปยังแอพ Instagram | |
องค์ประกอบที่เป็นวิดีโอพื้นหลัง | ข้อมูลสำหรับองค์ประกอบที่เป็นวิดีโอในรูปแบบที่รองรับ (H.264, H.265, WebM) วิดีโอสามารถมีความละเอียด 1080p และมีระยะเวลาสูงสุด 20 วินาที แนะนำให้ไม่เกิน 50 MB คุณต้องส่งองค์ประกอบพื้นหลัง (รูปภาพหรือวิดีโอ) องค์ประกอบสติกเกอร์ หรือทั้ง 2 อย่างไปยังแอพ Instagram | |
องค์ประกอบที่เป็นสติกเกอร์ | ข้อมูลสำหรับองค์ประกอบที่เป็นรูปภาพในรูปแบบที่รองรับ (JPG, PNG) ขนาดที่แนะนำ: 640x480 รูปภาพนี้จะปรากฏขึ้นเป็นสติกเกอร์บนพื้นหลัง คุณต้องส่งองค์ประกอบพื้นหลัง (รูปภาพหรือวิดีโอ) องค์ประกอบสติกเกอร์ หรือทั้ง 2 อย่างไปยังแอพ Instagram | |
สีด้านบนของเลเยอร์พื้นหลัง | ค่าสีของสตริงเลขฐานสิบหกที่ใช้ร่วมกับค่าสีด้านล่างของเลเยอร์พื้นหลัง หากค่าทั้งสองมีค่าเท่ากัน เลเยอร์พื้นหลังจะเป็นสีทึบ หากค่าทั้ง 2 นี้แตกต่างกัน ระบบจะใช้ค่าทั้งสองในการไล่ระดับสี | |
สีด้านล่างของเลเยอร์พื้นหลัง | ค่าสีของสตริงเลขฐานสิบหกที่ใช้ร่วมกับค่าสีด้านล่างของเลเยอร์พื้นหลัง หากค่าทั้งสองมีค่าเท่ากัน เลเยอร์พื้นหลังจะเป็นสีทึบ หากค่าทั้ง 2 นี้แตกต่างกัน ระบบจะใช้ค่าทั้งสองในการไล่ระดับสี |
คุณต้องลงทะเบียนแผน URL แบบกำหนดเองของ Instagram ก่อนที่แอพของคุณจะใช้แผนดังกล่าว เพิ่ม instagram-stories ไปยังคีย์ LSApplicationQueriesSchemes ใน Info.plist ของแอพ
ตัวอย่างโค้ดต่อไปนี้จะส่งองค์ประกอบที่เป็นรูปภาพเลเยอร์พื้นหลังไปยัง Instagram เพื่อให้ผู้ใช้สามารถแก้ไขและเผยแพร่ไปยัง Instagram Stories ของตนได้
- (void)shareBackgroundImage
{
// Identify your App ID
NSString *const appIDString = @"1234567890";
// Call method to share image
[self backgroundImage:UIImagePNGRepresentation([UIImage imageNamed:@"backgroundImage"])
appID:appIDString];
}
// Method to share image
- (void)backgroundImage:(NSData *)backgroundImage
appID:(NSString *)appID
{
NSURL *urlScheme = [NSURL URLWithString:[NSString stringWithFormat:@"instagram-stories://share?source_application=%@", appID]];
if ([[UIApplication sharedApplication] canOpenURL:urlScheme])
{
// Attach the pasteboard items
NSArray *pasteboardItems = @[@{@"com.instagram.sharedSticker.backgroundImage" : backgroundImage}];
// Set pasteboard options
NSDictionary *pasteboardOptions = @{UIPasteboardOptionExpirationDate : [[NSDate date] dateByAddingTimeInterval:60 * 5]};
// This call is iOS 10+, can use 'setItems' depending on what versions you support
[[UIPasteboard generalPasteboard] setItems:pasteboardItems options:pasteboardOptions];
[[UIApplication sharedApplication] openURL:urlScheme options:@{} completionHandler:nil];
}
else
{
// Handle error cases
}
} โค้ดตัวอย่างนี้จะแสดงวิธีส่งองค์ประกอบที่เป็นรูปภาพเลเยอร์สติกเกอร์และชุดสีเลเยอร์พื้นหลังไปยังแอพ Instagram หากคุณไม่ระบุสีเลเยอร์พื้นหลัง สีของเลเยอร์พื้นหลังจะเป็น #222222
- (void)shareStickerImage
{
// Identify your App ID
NSString *const appIDString = @"1234567890";
// Call method to share sticker
[self stickerImage:UIImagePNGRepresentation([UIImage imageNamed:@"stickerImage"])
backgroundTopColor:@"#444444"
backgroundBottomColor:@"#333333"
appID:appIDString];
}
// Method to share sticker
- (void)stickerImage:(NSData *)stickerImage
backgroundTopColor:(NSString *)backgroundTopColor
backgroundBottomColor:(NSString *)backgroundBottomColor
appID:(NSString *)appID
{
NSURL *urlScheme = [NSURL URLWithString:[NSString stringWithFormat:@"instagram-stories://share?source_application=%@", appID]];
if ([[UIApplication sharedApplication] canOpenURL:urlScheme])
{
// Attach the pasteboard items
NSArray *pasteboardItems = @[@{@"com.instagram.sharedSticker.stickerImage" : stickerImage,
@"com.instagram.sharedSticker.backgroundTopColor" : backgroundTopColor,
@"com.instagram.sharedSticker.backgroundBottomColor" : backgroundBottomColor}];
// Set pasteboard options
NSDictionary *pasteboardOptions = @{UIPasteboardOptionExpirationDate : [[NSDate date] dateByAddingTimeInterval:60 * 5]};
// This call is iOS 10+, can use 'setItems' depending on what versions you support
[[UIPasteboard generalPasteboard] setItems:pasteboardItems options:pasteboardOptions];
[[UIApplication sharedApplication] openURL:urlScheme options:@{} completionHandler:nil];
}
else
{
// Handle error cases
}
}โค้ดตัวอย่างนี้จะแสดงวิธีส่งองค์ประกอบที่เป็นรูปภาพเลเยอร์พื้นหลังและองค์ประกอบที่เป็นรูปภาพเลเยอร์สติกเกอร์ไปยังแอพ Instagram
- (void)shareBackgroundAndStickerImage
{
// Identify your App ID
NSString *const appIDString = @"1234567890";
// Call method to share image and sticker
[self backgroundImage:UIImagePNGRepresentation([UIImage imageNamed:@"backgroundImage"])
stickerImage:UIImagePNGRepresentation([UIImage imageNamed:@"stickerImage"])
appID:appIDString];
}
// Method to share image and sticker
- (void)backgroundImage:(NSData *)backgroundImage
stickerImage:(NSData *)stickerImage
appID:(NSString *)appID
{
NSURL *urlScheme = [NSURL URLWithString:[NSString stringWithFormat:@"instagram-stories://share?source_application=%@", appID]];
if ([[UIApplication sharedApplication] canOpenURL:urlScheme])
{
// Attach the pasteboard items
NSArray *pasteboardItems = @[@{@"com.instagram.sharedSticker.backgroundImage" : backgroundImage,
@"com.instagram.sharedSticker.stickerImage" : stickerImage}];
// Set pasteboard options
NSDictionary *pasteboardOptions = @{UIPasteboardOptionExpirationDate : [[NSDate date] dateByAddingTimeInterval:60 * 5]};
// This call is iOS 10+, can use 'setItems' depending on what versions you support
[[UIPasteboard generalPasteboard] setItems:pasteboardItems options:pasteboardOptions];
[[UIApplication sharedApplication] openURL:urlScheme options:@{} completionHandler:nil];
}
else
{
// Handle error cases
}
}คุณยังสามารถอนุญาตให้ผู้ใช้แอพแชร์เนื้อหาของคุณในรูปแบบสตอรี่บน Facebook ได้อีกด้วย โปรดเรียนรู้วิธีดำเนินการดังกล่าวนี้ที่เอกสารประกอบเกี่ยวกับการแชร์ไปยังสตอรี่ของ Facebook