আইওএস 10 - ক্যামেরা, মাইক্রোফোন এবং ফটো লাইব্রেরির অনুমতি চাওয়ার ক্ষেত্রে অ্যাপ্লিকেশনটি ক্র্যাশ হওয়ার জন্য পরিবর্তনগুলি


103

আইওএস 10, এখন মিডিয়া লাইব্রেরি, ফটোগুলি, ক্যামেরা এবং অন্যান্য হার্ডওয়্যারগুলিতে অ্যাক্সেসের জন্য ব্যবহারকারীদের অনুমতি প্রয়োজন। এর সমাধান হ'ল info.plistব্যবহারকারীর জন্য একটি বর্ণনা সহ কীগুলি যুক্ত করা হয় যে আমরা কীভাবে তাদের ডেটা ব্যবহার করছি,

আমি কেবল কয়েকটি চাবি খুঁজে পেতে পারি

NSPhotoLibraryUsageDescription
NSMicrophoneUsageDescription
NSCameraUsageDescription

আমি জানতে চাই যে অন্যান্য হার্ডওয়্যারের জন্য আরও কী রয়েছে iOS 10 কিনা আপনিinfo.plist যদি XCode - 8 বিটা ব্যবহার করে বিল্ড করেন তবে আপনার অ্যাপ্লিকেশনটি ক্র্যাশ হবে এমন কোনও যথাযথ কী বর্ণনার বিবরণ প্রদান করেন নি


আইওএস 10 এনডিএর অধীনে নেই?
সেজে 444

আমি এই সম্পর্কে নিশ্চিত নই।
সৈয়দ আলী সালমান

উত্তর:


138

[আইওএস 13 - এ আপডেট হওয়া গোপনীয়তা কীগুলির তালিকা - নীচে দেখুন]

Cocoa Keysআপনার Info.plistফাইলটিতে যা নির্দিষ্ট করতে পারেন তার একটি তালিকা রয়েছে :

https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html

(এক্সকোড: লক্ষ্য -> তথ্য -> কাস্টম আইওএস টার্গেট বৈশিষ্ট্য)

আইওএস এর আগে মাইক্রোফোন, ক্যামেরা এবং মিডিয়া লাইব্রেরি অ্যাক্সেস করার জন্য ইতিমধ্যে অনুমতি প্রয়োজন (আইওএস 6, আইওএস)), তবে যেহেতু আইওএস 10 অ্যাপটি ক্র্যাশ হয়ে যাবে আপনি কেন অনুমতি চেয়েছেন তা বর্ণনা না দিলে (এটি হতে পারে না) খালি)।

উদাহরণস্বরূপ বিবরণ সহ গোপনীয়তা কী: cheatsheet

উৎস

বিকল্পভাবে, আপনি Info.plistউত্স কোড হিসাবে খুলতে পারেন : সোর্স কোড

উৎস

এবং এর মতো গোপনীয়তা কী যুক্ত করুন:

<key>NSLocationAlwaysUsageDescription</key>
<string>${PRODUCT_NAME} always location use</string>

সমস্ত গোপনীয়তা কীগুলির তালিকা: [আইওএস 13 এ আপডেট করুন]

NFCReaderUsageDescription
NSAppleMusicUsageDescription
NSBluetoothAlwaysUsageDescription
NSBluetoothPeripheralUsageDescription
NSCalendarsUsageDescription
NSCameraUsageDescription
NSContactsUsageDescription
NSFaceIDUsageDescription
NSHealthShareUsageDescription
NSHealthUpdateUsageDescription
NSHomeKitUsageDescription
NSLocationAlwaysUsageDescription
NSLocationUsageDescription
NSLocationWhenInUseUsageDescription
NSMicrophoneUsageDescription
NSMotionUsageDescription
NSPhotoLibraryAddUsageDescription
NSPhotoLibraryUsageDescription
NSRemindersUsageDescription
NSSiriUsageDescription
NSSpeechRecognitionUsageDescription
NSVideoSubscriberAccountUsageDescription

2019 আপডেট করুন:

গত মাসগুলিতে, আমার দুটি অ্যাপ্লিকেশন পর্যালোচনা চলাকালীন প্রত্যাখ্যান করা হয়েছিল কারণ ক্যামেরা ব্যবহারের বিবরণটি তোলা ফটোতে আমি কী করি তা নির্দিষ্ট করে না spec

আমি থেকে বর্ণনা পরিবর্তন করতে হয়েছিল ${PRODUCT_NAME} need access to the camera to take a photoকরার ${PRODUCT_NAME} need access to the camera to update your avatarযদিও অ্যাপ্লিকেশন প্রসঙ্গ সুস্পষ্ট ছিল (ব্যবহারকারী অবতার উপর চাপড় মেরে)।

দেখে মনে হচ্ছে অ্যাপল এখন গোপনীয়তা ব্যবহারের বিবরণগুলিতে আরও বেশি মনোযোগ দিচ্ছে এবং কেন আমরা অনুমতি চাইছি সে সম্পর্কে আমাদের বিশদ বিবরণ দেওয়া উচিত।


2
হ্যাঁ, তবে পরিবর্তনটি হ'ল আমরা কেন অনুমতি চাইছি সে সম্পর্কে যদি আপনি বিবরণ না দিয়ে থাকেন তবে এখন অ্যাপ্লিকেশনটি ক্রাশ হবে। আমি ভুল হলে আমাকে সংশোধন করুন।
সৈয়দ আলী সালমান

1
@ সাইয়েদ আলী সালমান আপনি ঠিক বলেছেন - এটি আইওএস 10 এর পরে ক্র্যাশ হয়ে যাবে, এখন সত্যিই আপনার প্রশ্নটি পান। উত্তর আপডেট করবে। :)
KlimczakM

1
আমি আশা করি আপেল এটি বাধ্যতামূলক কিনা তা সিদ্ধান্ত নেবে। অ্যাপলের ডকুমেন্টেশন অনুযায়ী এটি নয়:Explain why your app needs the information if it’s not obvious. You can add custom text to the system-provided permission request alert. Make the text specific and polite, so people don’t feel pressured. Keep the text short, and use sentence case. There’s no need to include your app name. The system already identifies your app as the one making the request.
Sumofighter666

আমি পূর্বে সিস্টেম-উত্পন্ন বার্তাগুলি প্রদর্শনের জন্য এই মানগুলি ফাঁকা রাখতে সক্ষম হওয়ার বিষয়ে মন্তব্য করেছি এবং এটি কার্যকরভাবে কার্যকরভাবে কাজ করার সময় মনে হয় যে অ্যাপল আপনার বাইনারিটিকে স্বয়ংক্রিয়ভাবে প্রত্যাখ্যান করবে যদি আপনি এই কীগুলি অন্তর্ভুক্ত করেন তবে সেগুলির জন্য কোনও মান সেট না করেন Apple ।
স্টোনজ 2

13
আমার কাছে মনে হচ্ছে এটি অ্যাপলের সম্পূর্ণ বোকামি , কোনও অ্যাপ্লিকেশনটির অনুমতি বিন্যাসের অভাব ঘটলে কেবল ক্র্যাশ করা উচিত ... কী খারাপ ব্যবহারকারীর অভিজ্ঞতা! (বেনামে) অ্যাপস্টোর পর্যালোচনায় দ্রুত প্রবাহিত হওয়ার অভিযোগ ... এবং অবশ্যই সিমাল্টর অন্যরকম আচরণ করে ...
গ্যাব্রিয়েল

65

আইওএস 10 অনুরোধের অনুমতি নমুনার জন্য দয়া করে নীচে কোডগুলি সন্ধান করুন info.plist
আপনি আপনার কাস্টম বার্তার জন্য পরিবর্তন করতে পারেন।

    <key>NSCameraUsageDescription</key>
    <string>${PRODUCT_NAME} Camera Usage</string>

    <key>NSBluetoothPeripheralUsageDescription</key>
    <string>${PRODUCT_NAME} BluetoothPeripheral</string>

    <key>NSCalendarsUsageDescription</key>
    <string>${PRODUCT_NAME} Calendar Usage</string>

    <key>NSContactsUsageDescription</key>
    <string>${PRODUCT_NAME} Contact fetch</string>

    <key>NSHealthShareUsageDescription</key>
    <string>${PRODUCT_NAME} Health Description</string>

    <key>NSHealthUpdateUsageDescription</key>
    <string>${PRODUCT_NAME} Health Updates</string>

    <key>NSHomeKitUsageDescription</key>
    <string>${PRODUCT_NAME} HomeKit Usage</string>

    <key>NSLocationAlwaysUsageDescription</key>
    <string>${PRODUCT_NAME} Use location always</string>

    <key>NSLocationUsageDescription</key>
    <string>${PRODUCT_NAME} Location Updates</string>

    <key>NSLocationWhenInUseUsageDescription</key>
    <string>${PRODUCT_NAME} WhenInUse Location</string>

    <key>NSAppleMusicUsageDescription</key>
    <string>${PRODUCT_NAME} Music Usage</string>

    <key>NSMicrophoneUsageDescription</key>
    <string>${PRODUCT_NAME} Microphone Usage</string>

    <key>NSMotionUsageDescription</key>
    <string>${PRODUCT_NAME} Motion Usage</string>

    <key>kTCCServiceMediaLibrary</key>
    <string>${PRODUCT_NAME} MediaLibrary Usage</string>

    <key>NSPhotoLibraryUsageDescription</key>
    <string>${PRODUCT_NAME} PhotoLibrary Usage</string>

    <key>NSRemindersUsageDescription</key>
    <string>${PRODUCT_NAME} Reminder Usage</string>

    <key>NSSiriUsageDescription</key>
    <string>${PRODUCT_NAME} Siri Usage</string>

    <key>NSSpeechRecognitionUsageDescription</key>
    <string>${PRODUCT_NAME} Speech Recognition Usage</string>

    <key>NSVideoSubscriberAccountUsageDescription</key>
    <string>${PRODUCT_NAME} Video Subscribe Usage</string>

আইওএস 11 এবং আরও, আপনি যদি আপনার লাইব্রেরিতে ফটো / চিত্র যুক্ত করতে চান তবে আপনাকে অবশ্যই এই কীটি যুক্ত করতে হবে

    <key>NSPhotoLibraryAddUsageDescription</key>
    <string>${PRODUCT_NAME} library Usage</string>

ধন্যবাদ, এর আসল উত্তর, কেবল অ্যাপল বলেছেন "আপনার অ্যাপের নাম অন্তর্ভুক্ত করার দরকার নেই। সিস্টেম ইতিমধ্যে আপনার অ্যাপ্লিকেশনটিকে অনুরোধ করা হিসাবে চিহ্নিত করেছে।"
ইউসেল বায়রাম

2
এই যে উত্তরটি আমি সন্ধান
করছিলাম

19

আপনাকে আইওএস 10 এর জন্য তথ্য.পল্লিস্টে এই অনুমতিটি যুক্ত করতে হবে।

ছবি:

Key       :  Privacy - Photo Library Usage Description    
Value   :  $(PRODUCT_NAME) photo use

মাইক্রোফোন:

Key        :  Privacy - Microphone Usage Description    
Value    :  $(PRODUCT_NAME) microphone use

ক্যামেরা:

Key       :  Privacy - Camera Usage Description   
Value   :  $(PRODUCT_NAME) camera use

ডান কীগুলি হয় NSPhotoLibraryUsageDescription
BangOperator
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.