การแชร์ไปยังฟีด

คุณสามารถอนุญาตให้ผู้ใช้แอพแชร์เนื้อหาไปยังฟีด Instagram ของตนได้ด้วยการแชร์ไปยังฟีด

ภาพรวม

แอพของคุณสามารถส่งต่อรูปภาพและวิดีโอไปยังแอพ Instagram ได้โดยใช้ Implicit Intent ของ Android และลิงก์สากลของ iOS หรือการโต้ตอบเอกสาร โดยแอพ Instagram จะได้รับเนื้อหานี้และโหลดลงในตัวปรับแต่งฟีดเพื่อให้ผู้ใช้สามารถเผยแพร่เนื้อหาดังกล่าวไปยังฟีด Instagram ของตนได้

ผู้พัฒนา Android

การนำไปใช้งานของ Android นั้นใช้ Implicit Intent กับเอ็กซ์ตรา EXTRA_STREAM เพื่อแจ้งให้ผู้ใช้เลือกแอพ Instagram เมื่อเลือกแล้ว Intent จะเปิดใช้งานแอพ Instagram และส่งเนื้อหาของคุณ ซึ่งแอพ Instagram จะโหลดลงไปในตัวปรับแต่งฟีดอีกที

โดยทั่วไป ขั้นตอนการแชร์ของคุณควรจะเป็นดังนี้

  1. สร้างอินสแตนซ์ Implicit Intent ด้วยเนื้อหาที่คุณต้องการส่งไปยังแอพ Instagram
  2. เริ่มกิจกรรมและตรวจสอบว่าสามารถแก้ไข Implicit Intent ได้
  3. แก้ไขกิจกรรมหากสามารถทำได้

เนื้อหาที่แชร์ได้

คุณสามารถส่งเนื้อหาต่อไปนี้ไปยังแอพ Instagram:

เนื้อหาประเภทไฟล์คำอธิบาย

ภาพองค์ประกอบของชิ้นงานโฆษณา

JPEG, GIF, หรือ PNG

-

องค์ประกอบของชิ้นงานโฆษณาแบบไฟล์

MKV, MP4

ระยะเวลาขั้นต่ำ: 3 วินาที, ระยะเวลาสูงสุด: 10 นาที, ขนาดขั้นต่ำ: 640x640 พิกเซล

การแชร์ภาพองค์ประกอบของชิ้นงานโฆษณา

String type = "image/*";
String filename = "/myPhoto.jpg";
String mediaPath = Environment.getExternalStorageDirectory() + filename;

createInstagramIntent(type, mediaPath);

private void createInstagramIntent(String type, String mediaPath){

    // Create the new Intent using the 'Send' action.
    Intent share = new Intent(Intent.ACTION_SEND);

    // Set the MIME type
    share.setType(type);

    // Create the URI from the media
    File media = new File(mediaPath);
    Uri uri = Uri.fromFile(media);

    // Add the URI to the Intent.
    share.putExtra(Intent.EXTRA_STREAM, uri);

    // Broadcast the Intent.
    startActivity(Intent.createChooser(share, "Share to"));
}

การแชร์วิดีโอองค์ประกอบของชิ้นงานโฆษณา

String type = "video/*";
String filename = "/myVideo.mp4";
String mediaPath = Environment.getExternalStorageDirectory() + filename;

createInstagramIntent(type, mediaPath);

private void createInstagramIntent(String type, String mediaPath){

    // Create the new Intent using the 'Send' action.
    Intent share = new Intent(Intent.ACTION_SEND);

    // Set the MIME type
    share.setType(type);

    // Create the URI from the media
    File media = new File(mediaPath);
    Uri uri = Uri.fromFile(media);

    // Add the URI to the Intent.
    share.putExtra(Intent.EXTRA_STREAM, uri);

    // Broadcast the Intent.
    startActivity(Intent.createChooser(share, "Share to"));
}

ผู้พัฒนา iOS

การปรับใช้บน iOS สามารถใช้ลิงก์สากลเพื่อเปิดใช้แอพ Instagram และส่งเนื้อหาให้แอพ หรือให้แอพดำเนินการที่เฉพาะเจาะจงได้

ลิงก์สากล

ใช้ลิงก์สากลที่แสดงในตารางต่อไปนี้เพื่อดำเนินการในแอพ Instagram

ลิงก์สากลการดำเนินการ

https://www.instagram.com

เปิดใช้แอพ Instagram

https://www.instagram.com/create/story

เปิดใช้แอพ Instagram ด้วยมุมมองกล้องหรือคลังรูปภาพบนอุปกรณ์ที่ไม่มีกล้อง

https://www.instagram.com/p/{media_id}

เปิดใช้แอพ Instagram และโหลดโพสต์ที่ตรงกับค่า ID ที่ระบุ (int)

https://www.instagram.com/{username}

เปิดใช้แอพ Instagram และโหลดผู้ใช้ Instagram ที่ตรงกับค่าชื่อผู้ใช้ที่ระบุ (string)

https://www.instagram.com/explore/locations/{location_id}

เปิดใช้แอพ Instagram และโหลดฟีดตำแหน่งที่ตรงกับค่า ID ที่ระบุ (int)

https://www.instagram.com/explore/tags/{tag_name}

เปิดใช้แอพ Instagram และโหลดหน้าสำหรับแฮชแท็กที่ตรงกับค่าชื่อที่ระบุ (string)

ตัวอย่างโค้ด Objective-C

ตัวอย่างใน Objective-C ต่อไปนี้จะเปิดใช้แอพ Instagram ด้วยมุมมองกล้อง

NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/create/story"];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    [[UIApplication sharedApplication] openURL:instagramURL];
}

การโต้ตอบของเอกสาร

หากแอพพลิเคชั่นของคุณสร้างรูปภาพ และคุณต้องการให้ผู้ใช้แชร์รูปภาพเหล่านี้โดยใช้ Instagram คุณสามารถใช้ API การโต้ตอบของเอกสารเพื่อเปิดรูปภาพในขั้นตอนการแชร์ของ Instagram

คุณต้องบันทึกไฟล์ในรูปแบบ PNG หรือ JPEG (แนะนำ) ก่อนแล้วใช้นามสกุลไฟล์ .ig ด้วย iOS Document Interaction API คุณสามารถทริกเกอร์รูปภาพให้เปิดด้วย Instagram ตัวระบุสำหรับ UTI การโต้ตอบของเอกสารของเราคือ com.instagram.photo และสอดคล้องกับ UTI public/jpeg และ public/png ดูบทความเอกสารประกอบของ Apple: การพรีวิวและการเปิดไฟล์และการอ้างอิงคลาส UIDocumentInteractionController สำหรับข้อมูลเพิ่มเติม

ในอีกทางหนึ่ง หากคุณต้องการแสดงเฉพาะ Instagram ในรายการแอพพลิเคชั่น (แทนที่จะเป็น Instagram และแอพที่สอดคล้องกับ public/jpeg อื่นๆ) คุณสามารถระบุคลาสส่วนขยาย igo ซึ่งเป็นประเภท com.instagram.exclusivegram ได้

เมื่อทริกเกอร์แล้ว Instagram จะแสดงภาพหน้าจอฟิลเตอร์ของเราแก่ผู้ใช้ทันที รูปภาพจะได้รับการโหลดล่วงหน้าและจัดขนาดให้เหมาะสำหรับ Instagram เพื่อผลลัพธ์ที่ดีที่สุด Instagram ต้องการเปิดไฟล์ JPEG ที่เป็นสี่เหลี่ยมจัตุรัสขนาด 640x640 พิกเซล ภาพที่มีขนาดใหญ่กว่านี้จะได้รับการปรับขนาดแบบไดนามิก