การจัดการสิทธิ์การอนุญาตที่ได้รับการปฏิเสธ

เมื่อผู้ใช้สร้างบัญชีหรือเข้าสู่ระบบแอพโดยใช้การเข้าสู่ระบบ Facebook ผู้ใช้จะมีโอกาสให้สิทธิ์การอนุญาตที่คุณขอ แต่ก็สามารถปฏิเสธสิทธิ์การอนุญาตทั้งหมดได้ด้วยเช่นกัน ยกเว้นการเข้าถึงโปรไฟล์สาธารณะของตน ผู้ใช้อาจเลือกดำเนินการนี้หากรู้สึกว่าไม่สะดวกใจที่จะแชร์ข้อมูลกับแอพของคุณ หรือไม่เข้าใจว่าจะมีการนำข้อมูลไปใช้เพื่อปรับปรุงประสบการณ์ที่ตนได้รับอย่างไร

เมื่อผู้ใช้เลือกปฏิเสธสิทธิ์การอนุญาต สิ่งสำคัญคือแอพของคุณควรเคารพการตัดสินใจนั้น และยังมอบประสบการณ์ดีๆ ในการใช้งานต่อไป

โดยทั่วไป แอพของคุณอาจตอบสนองได้ 3 วิธี (แบบใดแบบหนึ่ง)

  1. ดำเนินการต่อโดยไม่ต้องใช้ข้อมูล
  2. อธิบายเหตุผลที่คุณต้องใช้ข้อมูลและขอสิทธิ์นั้นอีกครั้ง
  3. รวบรวมข้อมูลเอง

ดำเนินการต่อโดยไม่ใช้ข้อมูล

ในบางกรณี แอพของคุณอาจทำงานได้โดยไม่ต้องใช้สิทธิ์การอนุญาตบางอย่างที่ขอ ซึ่งในกรณีนี้ สิ่งที่ง่ายที่สุดที่ควรทำคือเคารพการปฏิเสธสิทธิ์การอนุญาตนั้น และยังคงนำผู้ใช้เข้าสู่แอพ

ดังตัวอย่างด้านล่างนี้ Flick Finder อาจให้คำแนะนำเกี่ยวกับภาพยนตร์ที่ดีขึ้นได้ หากได้รับสิทธิ์การอนุญาตให้เข้าถึง user_likes แต่ในเมื่อผู้ใช้ปฏิเสธสิทธิ์การอนุญาตนั้น Flick Finder ก็เพียงแค่เสนอคำแนะนำทั่วไปแทน

ตัวเลือกนี้เป็นตัวเลือกที่ง่ายที่สุดและให้ประสบการณ์ที่ดีแก่ผู้ใช้ที่เลือกปฏิเสธสิทธิ์การอนุญาตบางอย่างโดยยังคงเคารพการตัดสินใจนั้นด้วย

อธิบายเหตุผลและขอสิทธิ์นั้นอีกครั้ง

ผู้ใช้อาจปฏิเสธสิทธิ์การอนุญาตเพราะไม่เข้าใจเหตุผลที่แอพต้องใช้ข้อมูลนั้น ในกรณีนี้ แอพอาจแสดงกล่องโต้ตอบที่อธิบายเหตุผลว่าเหตุใดคุณต้องใช้ข้อมูล รวมทั้งจะมีการนำข้อมูลนั้นไปปรับปรุงประสบการณ์ให้ดีขึ้นได้อย่างไร

ดังตัวอย่างด้านล่างนี้ Flick Finder แสดงกล่องโต้ตอบที่อธิบายว่าแอพสามารถใช้ที่อยู่อีเมลเพื่อส่งข้อมูลให้กับคุณเมื่อมีภาพยนตร์ใหม่เข้ามา ปุ่ม "เพิ่มอีเมล" จะนำผู้ใช้กลับไปที่ลำดับขั้นตอนการเข้าสู่ระบบ Facebook ที่ซึ่งผู้ใช้สามารถให้สิทธิ์การอนุญาต email ได้

โปรดทราบว่า ในตัวอย่างนี้ ผู้ใช้ยังมีโอกาสที่จะไม่ให้สิทธิ์การอนุญาต email เช่นเดิม

กลยุทธ์นี้สามารถนำไปใช้กับสิทธิ์การอนุญาตที่จำเป็นอย่างยิ่งหรือเป็นที่ต้องการอย่างยิ่งสำหรับฟังก์ชันการทำงานของแอพของคุณ

รวบรวมข้อมูลเอง

คุณอาจรวบรวมข้อมูลบางอย่างได้ง่ายๆ

ดังตัวอย่างนี้ Flick Finder ต้องการรวบรวมข้อมูลวันเกิดของผู้ใช้เพื่อแนะนำภาพยนตร์ที่เหมาะกับวัย หากผู้ใช้ปฏิเสธที่จะแชร์วันเกิดเมื่อเข้าสู่ระบบ Facebook แล้ว Flick Finder ก็ยังสามารถสร้างส่วนที่ใช้เก็บข้อมูลภายในแอพได้ โดยแยกออกจากลำดับขั้นตอนการเข้าสู่ระบบ Facebook เราขอแนะนำให้ดำเนินการนี้หลังจากที่ผู้ใช้เริ่มคุ้นเคยกับแอพของคุณแล้ว เพื่อให้เกิดความเข้าใจมากยิ่งขึ้นว่าสิทธิ์การอนุญาตจะช่วยปรับปรุงประสบการณ์ของตนอย่างไร

ตัวอย่างข้อมูลที่สามารถรวบรวมด้วยวิธีนี้ ได้แก่ user_hometown, user_location, user_birthday หรือแม้แต่ email

การตรวจจับสิทธิ์การอนุญาตที่ได้รับการปฏิเสธ

เมื่อผู้ใช้ปฏิเสธสิทธิ์การอนุญาตในลำดับขั้นตอนการเข้าสู่ระบบ Facebook เราได้ช่วยให้แอพของคุณตรวจจับการดำเนินการนี้ได้ง่าย และตอบสนองโดยใช้กลยุทธ์ที่แจ้งไว้ข้างต้น

Android SDK

ใน Android คุณสามารถเรียกวิธี getDeclinedPermissions ในอ็อบเจ็กต์ AccessToken ใน Facebook SDK สำหรับ Android ได้

iOS SDK

ใน iOS คุณสามารถเรียกวิธี [FBSDKAccessToken declinedPermissions] ใน Facebook SDK สำหรับ iOS ได้

JavaScript SDK

คุณสามารถเรียกจุดเชื่อมโยง permissions ในอ็อบเจ็กต์ User ของ API กราฟเพื่อตรวจจับสิทธิ์การอนุญาตที่ได้รับการปฏิเสธได้ คุณสามารถรวบรวมสิทธิ์การอนุญาตที่ได้รับการปฏิเสธใดก็ได้โดยการย้ำผ่านการตอบสนอง ดังนี้

FB.api('/me/permissions', function(response) {
  var declined = [];
  for (i = 0; i < response.data.length; i++) { 
    if (response.data[i].status == 'declined') {
      declined.push(response.data[i].permission)
    }
  }
  alert(declined.toString())
});

API

คุณสามารถเรียกจุดเชื่อมโยง permissions ในอ็อบเจ็กต์ User ของ API กราฟเพื่อตรวจจับสิทธิ์การอนุญาตที่ได้รับการปฏิเสธได้

GET https://graph.facebook.com/me/permissions?access_token=USER_ACCESS_TOKEN

ซึ่งจะแสดงการตอบสนองของแบบฟอร์ม ดังนี้

{ "data": [
    {
      "permission": "user_birthday",
      "status": "granted"
    },
    {
      "permission": "public_profile",
      "status": "granted"
    },
    {
      "permission": "email",
      "status": "declined"
    }
]}

เป็นการบอกแอพว่าผู้ใช้ให้สิทธิ์การอนุญาต user_birthday และ public_profile แต่เลือกปฏิเสธสิทธิ์การอนุญาต email

สรุป

การจัดการกับสิทธิ์การอนุญาตที่ผู้ใช้ปฏิเสธด้วยดีเป็นส่วนสำคัญในการมอบประสบการณ์ที่ดีในการเข้าสู่ระบบ Facebook แก่ผู้ใช้

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