canOpenUrl - แอปนี้ไม่ได้รับอนุญาตให้ค้นหาโปรแกรม instragram แบบแผน


98

ฉันพยายามเพิ่ม URL Instagram ในแอพของฉันใน iOS9 แต่ฉันได้รับคำเตือนต่อไปนี้:

-canOpenURL: failed for URL: "instragram://media?id=MEDIA_ID" - error: "This app is not allowed to query for scheme instragram"

อย่างไรก็ตามฉันได้เพิ่มสิ่งต่อไปนี้LSApplicationQueriesSchemesในส่วนของฉันinfo.plist;

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>instagram</string>
    <string>instagram://media?id=MEDIA_ID</string>//this one seems to be the issue
</array>

ความช่วยเหลือใด ๆ ที่ได้รับการชื่นชมอย่างมาก?

แก้ไข 1

นี่คือรหัสที่ฉันใช้เพื่อเปิด instagram:

 NSURL * instagramURL = [NSURL URLWithString:@"instragram://media?id=MEDIA_ID"];//edit: note, to anyone copy pasting this code, please notice the typo OP has in the url, that being "instragram" instead of "instagram". This typo was discovered after this StackOverflow question was posted.
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    //do stuff
}
else{
    NSLog(@"NO instgram found");
}

จากตัวอย่างนี้


5
เป็นเพราะคุณเขียน instragram แทน instagram หรือเปล่า?
James P

2
@JamesP ตบหน้าตัวเองว่าฉันพลาดไปได้อย่างไร แต่ ive แก้ไขแล้วและปัญหายังคงอยู่
DevC

คำตอบ:


210
  1. LSApplicationQueriesSchemesรายการของคุณควรมีเพียงโครงร่าง ไม่มีประเด็นสำหรับรายการที่สอง

    <key>LSApplicationQueriesSchemes</key>
    <array>
        <string>instagram</string>
    </array>
    
  2. อ่านข้อผิดพลาด คุณกำลังพยายามเปิด URL ด้วยการพิมพ์ผิดในโครงร่าง แก้ไขการอ้างอิงของคุณไปในการเรียกร้องให้instragramcanOpenURL:


1
น่าอายจังฉันอ่านข้อความแสดงข้อผิดพลาดประมาณ 30 ครั้งและมองต่อไปเรื่อย ๆ ตอนนี้ข้อผิดพลาดหายไปแล้ว จุดแรกถูกต้องเช่นกันไม่จำเป็นต้องมีรายการที่สอง
DevC

15
มันเหมือนกับการพยายามพิสูจน์อ่านกระดาษของคุณเอง มันใช้ไม่ได้ คุณเฝ้าดูสิ่งที่คุณคาดหวังว่าจะเป็นไม่ใช่สิ่งที่เป็นจริง
rmaddy

6

ใส่เท่านั้น<string>instagram</string>. ไม่จำเป็นต้องใช้เส้นทางแบบเต็ม แต่เป็นฐานของ url แบบแผน


6

สำหรับ Facebook ใครต้องการ:

<key>LSApplicationQueriesSchemes</key>
    <array>
        <string>fbauth</string>
        <string>fbauth2</string>
        <string>fb-messenger-api20140430</string>
        <string>fbapi20130214</string>
        <string>fbapi20130410</string>
        <string>fbapi20130702</string>
        <string>fbapi20131010</string>
        <string>fbapi20131219</string>
        <string>fbapi20140410</string>
        <string>fbapi20140116</string>
        <string>fbapi20150313</string>
        <string>fbapi20150629</string>
        <string>fbshareextension</string>
    </array>

5
สิ่งนี้ไม่เกี่ยวข้องกับคำถาม
rmaddy

สิ่งนี้ไม่ตอบคำถามที่แท้จริง
Gulfam Khan

2
facebook เป็นเจ้าของ instgram .. ไอ
Ezos
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.