একবার তৈরি হয়ে গেলে কি এপিএনএস ডিভাইস টোকেনটি বদলে যায়?


100

একবার তৈরি হয়ে গেলে পুশ নোটিফিকেশন ডিভাইস টোকেনটি কি কখনও পরিবর্তন হয়?

অ্যাপ্লিকেশন আপডেট করা হয় যখন উদাহরণ ? বা অন্য কোনও ক্ষেত্রে এটি পরিবর্তন হতে পারে ??


ডিভাইসের টোকেন পরিবর্তিত হয় এমন 4 টি স্থানে ডকুমেন্টেশন সরবরাহ করার সাথে সাথে আপনি এই উত্তরটি দেখেছেন তা নিশ্চিত করুন
মধু

উত্তর:


72

থেকে [অ্যাপল ডকুমেন্টেশন ApplePushService] 2

টোকেন আস্থার এই ধাপের ফর্মটি নিশ্চিত করে যে কেবলমাত্র এপিএনই টোকেন তৈরি করে যা এটি পরে সম্মান করবে এবং এটি নিজেকে নিশ্চিত করতে পারে যে কোনও ডিভাইস দ্বারা এটি দেওয়া টোকেন একই টোকেন যা এটি আগে নির্দিষ্ট ডিভাইসের জন্য সরবরাহ করেছিল — এবং কেবলমাত্র ডিভাইসের জন্য

যদি ব্যবহারকারী কোনও নতুন ডিভাইসে ব্যাকআপ ডেটা পুনরুদ্ধার করে বা অপারেটিং সিস্টেমটি পুনরায় ইনস্টল করে, ডিভাইস টোকেন পরিবর্তন হয়।


বর্তমান ডক্স সর্বশেষ বাক্যটি বাদ দিয়েছে। এটা তোলে (অন্য তাই প্রশ্ন থেকে মনে হচ্ছে, stackoverflow.com/questions/2751481/... যে পুনরূদ্ধার তথ্য) হবে APN এর টোকেন কিন্তু যা OS ইনস্টলসমূহ এবং "টিস্যু" ধরে রাখা এটি পুনরায় সেট পাবেন (যদি না তারা সদ্য ইনস্টল করা অপারেটিং ডেটা পুনরূদ্ধার দ্বারা অনুসরণ করা হয় পদ্ধতি).
রবার্ট আল্টম্যান

4
@ রবার্ট অলটম্যান - আমার মনে হয় না এটি পুরো গল্প। আমি ঠিক একই এপিএনএস টোকেন সহ সম্পূর্ণ ভিন্ন ডিভাইস থেকে আমাদের ডাটাবেসে বেশ কয়েকটি রেজিস্ট্রেশন দেখেছি । আমি এখনই আমার সামনে দেখতে পাচ্ছি একটি আইপ্যাড 2 এবং একটি আইফোন 3 জিএস যা আমাদের একই টোকেনটি প্রেরণ করেছে। অন্য কেউ এই আচরণের নিশ্চয়তা দিতে পারে?
ডগডাব্লু

@ ডউগডাব্লু, এটি আশ্চর্যজনক। আপনি কি এখনও একই জাতীয় সমস্যা? লিঙ্কটি সম্পাদনা করে সর্বশেষ দস্তাবেজগুলি থেকে পোস্ট করা।
iosCurator

139

অ্যাপলের অফিসিয়াল ডকুমেন্টেশন এ বিষয়ে অস্পষ্ট। আমি যা পর্যবেক্ষণ করেছি তা হ'ল: টোকেনটি কোনও প্রদত্ত ডিভাইস, অ্যাপ্লিকেশন এবং ডোমেনের জন্য উত্পাদক (উত্পাদন বনাম স্যান্ডবক্স)। আমি বিশ্বাস করি যে সিস্টেমটি নির্ভরযোগ্যভাবে কাজ করার জন্য এটি অবশ্যই সত্য থাকতে পারে। এমন একটি পরিস্থিতি বিবেচনা করুন যেখানে কোনও অ্যাপ্লিকেশন আপডেট নতুন এপিএন টোকেনকে ট্রিগার করে; আমি যদি নোটিফিকেশন সক্ষম থাকা সর্বাধিক নতুন টুইটার-মতো অ্যাপ্লিকেশনটি ব্যবহার করতাম, আমি আইটিউনস থেকে আমার অ্যাপ্লিকেশনটি আপডেট করব তখন কী হবে? আমার ডিভাইসে আপডেটটি "সিঙ্ক" করার পরে আমি অ্যাপ্লিকেশনগুলি চালিত না করেও এটি কী বিজ্ঞপ্তিগুলি প্রেরণ করা অব্যাহত রাখবে এমন প্রত্যাশা আমার থাকা উচিত? অ্যাপ্লিকেশন পরিবর্তনের কাজটি এপিএন সিস্টেমকে প্রভাবিত করতে পারে না কারণ আপনি আপডেট করা অ্যাপটি চালিত না করেও ওএস আপনার পক্ষ থেকে বিজ্ঞপ্তি পেতে পারে।

স্পষ্টতই, অ্যাপল বলেছে যে "একটি অ্যাপ্লিকেশনটি প্রতিবার এটি চালু করার সময় [এপিএন সার্ভারের সাথে] নিবন্ধভুক্ত করা উচিত এবং তার সরবরাহকারীকে বর্তমান টোকেন দেওয়া উচিত"। আমি আন্তরিকভাবে সম্মত; এটি করা আপনার অ্যাপ্লিকেশনটিকে খারাপ অনুমান বা অস্বাভাবিক পরিস্থিতি থেকে রক্ষা করবে।

একক ডিভাইসের জন্য সমস্ত অ্যাপ্লিকেশন জুড়ে কি নোটিফিকেশন টোকেনগুলিরইঙ্গিত করে যে ডিভাইস টোকেনগুলি "অপারেটিং সিস্টেম ইনস্টল" প্রতি অনন্য; এবং যে কোনও ডিভাইসে ব্যাকআপ থেকে পুনরুদ্ধার করা টোকেনটি বজায় রাখে তবে কোনও ডিভাইস মুছলে তা নতুন টোকেন পেতে পারে get এটি সম্পূর্ণরূপে অ্যাপল এর বিজোড় অপারেশন এবং গোপনীয়তার উদ্দেশ্যগুলির সাথে সামঞ্জস্যপূর্ণ: কোনও ডিভাইস মুছে ফেলা যথেষ্ট তীব্র যে সম্ভবত এটি একটি নতুন সংস্থার ওয়ারেন্ট দেয়, তবে কোনও ওএস আপডেটের পরে কোনও চিত্র পুনরুদ্ধারকারী কোনও ব্যবহারকারী তাদের বিদ্যমান বিজ্ঞপ্তিগুলি সংরক্ষণ করতে চাইবে। আমি যদি আমার আইপ্যাডের সাম্প্রতিক আইওএস 5 আপডেটটি স্মরণ করি তবে আমি আপগ্রেড করার পরে সাম্প্রতিকতম ব্যাকআপটি পুনরুদ্ধার করেছি, সুতরাং এটি আমার বিজ্ঞপ্তি টোকেনের ধারাবাহিকতা বজায় রাখতে পারত। [সম্পাদনা: একটি একটি ব্যাকআপ পুনরূদ্ধার বিভিন্ন উত্তরগুলির মধ্যে একটি? ডিভাইসটি টোকেনটির সদৃশ করবে না]]

সতর্কতামূলক: এপিএন নিয়ে তৃতীয় পক্ষের বিকাশকারী হিসাবে কাজ করার জন্য আমার কিছু বিষয়ে যথাযথ অভিজ্ঞতা নেই। সর্বদা হিসাবে, আপনার অনুমানগুলি যাচাই করা ভাল।


আপডেট (জুন ২০১২):

আমি সম্প্রতি অ্যাপল ইঞ্জিনিয়ারদের সাথে <> আলাপ করার এবং কিছু বাস্তব ওয়ার্ল্ড টেস্ট চালানোর সুযোগ পেয়েছি এবং আমি ফলাফলগুলি উপস্থাপন করতে চেয়েছিলাম:

সম্পূর্ণ হওয়ার জন্য, আমি যখন একটি এপিএন টোকেন ফিরিয়ে দেওয়ার বিষয়ে কথা বলি তখন আমি একক বান্ডিল শনাক্তকারী / অ্যাপ্লিকেশনটির প্রসঙ্গটি ধরে নিচ্ছি।

প্রথমত, অ্যাপল ইঞ্জিনিয়াররা বলেছিলেন যে দুটি ডিভাইসের জন্য একই এপিএন ফেরানো সম্ভব হবে না। নীচের মন্তব্য সত্ত্বেও, আমি এমন কোনও পরিস্থিতি সনাক্ত করতে সক্ষম হইনি যেখানে এটি ব্যর্থ হয়।

দ্বিতীয়ত, এখানে আপগ্রেড পরীক্ষার ক্রম এবং ফলাফল রয়েছে:

  1. আইফোন 4 এ ইনস্টল করা আইওএস 4 দিয়ে শুরু করুন; আইটিউনসে ব্যাকআপ ডিভাইস

  2. আইওএস 5 এ আপগ্রেড করুন
    পূর্ববর্তী পরীক্ষা থেকে, আমি জানি যে এপিএন টোকেন এখন অন্যরকম

  3. ডিভাইসে ব্যাকআপটি পুনরুদ্ধার করুন
    এপিএন টোকেন এখন ধাপ 1-এর সমান।

  4. আইওএস (পরিষ্কার ডিভাইস) রিসেট করুন
    এপিএন টোকেন পরিবর্তন

  5. আইটিউনসে একটি পৃথক ফোন ব্যাকআপ করুন এবং সেই ব্যাকআপটিকে পরীক্ষার ডিভাইসে পুনরুদ্ধার করুন; মূলত, আমি "ভুল" ব্যাকআপ পুনরুদ্ধার করছি, যেন আমি ফোনগুলি স্যুইচ করছি।
    আবার এপিএন টোকেন পরিবর্তন হয়; আরও এটি পৃথক এবং মূল টোকেন বা "ক্লোনড" টোকেনটি টোকেনগুলির সাথে মেলে না।

  6. ডিভাইসে "সঠিক" ব্যাকআপ পুনরুদ্ধার করুন।
    এপিএন টোকেন এখন ধাপ 1 এর সমান।

  7. শেষ অবধি, আমি ফোনটি iOS6 (বিটা 2) এ আপগ্রেড করেছি, আমার ব্যাকআপটি পুনরুদ্ধার করেছি এবং পুনরায় পরীক্ষা করেছি। প্রত্যাশিত হিসাবে, টোকেনটি 1 ধাপে টোকেনটির সাথে মিল রেখে চলেছে।

এই মুহুর্তে, আমি বেশ আত্মবিশ্বাসী যে এপিএন টোকেনগুলি বিভিন্ন ডিভাইসের মধ্যে নকল করা যায় না; সম্ভবত এটি iOS এর পূর্ববর্তী সংস্করণগুলিতে একটি বাগ হিসাবে ঘটেছে, তবে আমি আত্মবিশ্বাসী যে আইওএস 5 (এবং সম্ভবত iOS6) এপিএন টোকেনগুলি সঠিকভাবে পরিচালনা করছে।


আপডেট (আগস্ট 2012)

আমি কেবল বুঝতে পেরেছিলাম যে আমি এটি যোগ করি নি: ডিভাইস টোকেনগুলি পরিবর্তন হবে । অ্যাপল ডেভসের একজন আমার সাথে ভাগ করে নিয়েছে যে টোকেনগুলি আসলে শেষ হয় (2 বছর পরে, আমি মনে করি)। অনেকগুলি উদ্দেশ্যে, এটি যথেষ্ট দীর্ঘ যা আক্রমণকারী হিসাবে ভাবা যেতে পারে।

[আমি যদি দু'বছর পরপর আমার পরীক্ষার স্ক্রিপ্টগুলি নতুন টোকেন দিয়ে আপডেট করতে হয়, বিশেষত যেহেতু আমি প্রতি বছর ফোনগুলি পরিবর্তন করি।


সুতরাং এর অর্থ কি আপনি কোনও ব্যবহারকারীকে অনন্যরূপে সনাক্ত করার উপায় হিসাবে টোকেনটি ব্যবহার করতে পারেন? (অ্যাপ্লিকেশনগুলিতে যা খুব ব্যবহারিক যেখানে কোনওকে 'ভোট' দিতে হয়?)। আমি পরিস্থিতিটি কল্পনা করতে পারি: ব্যবহারকারীর ভোট এবং অ্যাপ্লিকেশনটি বিজ্ঞপ্তিগুলির মাধ্যমে একটি এলোমেলো সংখ্যার সাথে সাড়া দেয়। ভোটটি বৈধ করার জন্য এই নম্বরটি সার্ভারে পুনরায় পাঠাতে হবে। এভাবে ভোট দিয়ে সহজে কারচুপি করা যায় না।
টোড

এছাড়াও আকর্ষণীয়: অ্যাপটি মোছার সময় টোকেন পরিবর্তন হয় এবং এটি পুনরায় ইনস্টল করে। বা এটি 'ব্যাকআপ পুনরুদ্ধার' বিকল্পটির সাথে মিল রয়েছে
টোড

@ টিড করুন কোনও অ্যাপ্লিকেশন সরানো এবং পুনরায় ইনস্টল করার ফলে টোকেনটি পরিবর্তন হবে না।
রবার্ট আল্টম্যান

@ টিউড আমি ভাবিনি যে এটি ব্যবহারকারীর সনাক্তকরণের একটি ভাল ফর্ম হবে; যেহেতু টোকন প্রতি ডিভাইসটি অনন্য (পাশাপাশি অ্যাপ্লিকেশন হিসাবে), একাধিক ডিভাইসযুক্ত ব্যবহারকারীর একাধিক টোকেন থাকবে।
রবার্ট আল্টম্যান

4
আমি শংসাপত্র এবং ডিভাইস টোকেনের মধ্যে সম্পর্ক সম্পর্কে অবাক। .p12 শংসাপত্রের মেয়াদ শেষ হয়ে গেলে নতুন শংসাপত্র পরিবর্তন করতে হবে। আমি একটি রেফারেন্স পেয়েছি "যখন একটি নতুন ডিভাইস টোকেন প্রয়োজন হয়, তখন এপিএন ডিভাইসের শংসাপত্রে থাকা তথ্য ব্যবহার করে একটি উত্পন্ন করে।" শংসাপত্র পরিবর্তন করার সময় তাই ডিভাইস টোকেন রিফ্রেশ হওয়ার কোনও সম্ভাবনা নেই?
বিভ্রম

51

আমি যদি কোনও অ্যাপ পুনরায় ইনস্টল করি তবে আমি এটি কেবল iOS9 এবং APN পুশ টোকেন পরিবর্তনের মাধ্যমে পরীক্ষা করেছি ।


7
আমি এটি নিশ্চিত করতে পারি
রুমেল

4
আমি এটিও নিশ্চিত করতে পারি
মুহাম্মদ আদনান

4
হ্যাঁ, এটি পরিবর্তন হচ্ছে :(
নাজিক

কেউ কি বলতে পারে কেন এমন হয়?
সুশোভিত

হ্যাঁ, এটি পরিবর্তিত হবে
বেদ রুনিয়র

22

হ্যাঁ , ডিভাইস টোকেনগুলি পরিবর্তন করতে পারে।

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

  1. ডিভাইসের স্থানীয় সঞ্চয়স্থান আপডেট করুন (সম্ভবত এটি সহ nil)
  2. ডিভাইসে এমন কোনও কিছু আপডেট করুন যা নতুন টোকেন সম্পর্কে সচেতন হতে টোকেন ব্যবহার করে
  3. নতুন টোকেনে এই টোকেন সম্পর্কে সচেতন এমন কোনও এপিআই আপডেট করুন।

ব্যবহারিক বিষয় হিসাবে, সর্বশেষ পদক্ষেপটি তুচ্ছ-তুচ্ছ হওয়ার সম্ভাবনা সবচেয়ে বেশি। উদাহরণস্বরূপ, যদি আপনার এমন কোনও পরিষেবা থাকে যা কোনও ডিভাইস টোকেনে সেই আবহাওয়ার সতর্কতা প্রেরণ করছে যে ডিভাইসটি কোন জিপ কোডটির উপর ভিত্তি করে সাবস্ক্রাইব করেছে, তবে আপনাকে সরবরাহ old_tokenএবং new_tokenআপডেট করা যেতে পারে যাতে এটি সরবরাহ আপডেট করতে পারে update

তবে, সাধারণত একটি "ডিভাইস টোকেন" গ্রহণকারী এপিআইয়ের 100% বলার UPDATEক্ষেত্রেও সেই টোকেনের জন্য কিছু প্রকারের সুবিধা থাকতে হবে । করতে না এই জন্য বানাতে পারবে করার ভুল বিতরণ এবং অ বিতরণ বিজ্ঞপ্তির জন্য বিল্ড।


ভাল লাগছে, তবে আমি আমার অ্যাপটি কী সরিয়ে আবার ইনস্টল করেছি? সেই দৃশ্যে আমি স্থানীয় স্টোরেজের অধীনে যে ডিভাইস টোকেন সংরক্ষণ করেছি সেগুলি মুছে ফেলা হবে
কুফ

@ কুফ, আপনি কি এই প্রশ্নের উত্তর পেয়েছেন? আমার একই আছে - এমনকি অ্যাপটি আনইনস্টল করা / পুনরায় ইনস্টল করা আছে, আমরা কীভাবে সিস্টেম টোকনকে তুলনা করব?
nkirkes

@ এনকির্কস আরও তথ্যের জন্য এই প্রশ্নটি দেখুন
কুফ

আপনি যে তিনটি "আপডেট" পয়েন্ট নিয়ে কথা বলেছেন, সেগুলি কি আইওএস, এসডিকে, বা নিজেরাই দায়বদ্ধ?
সামনের নাম 22

7

ডিভাইস টোকেন আইওএস 8 এবং তার পরে পরিবর্তন হয় change

অ্যাপল ওয়েবসাইট থেকে নীচে পাঠ্য দয়া করে দেখুন। নিবন্ধকরণ, সময়সূচী এবং ব্যবহারকারীর বিজ্ঞপ্তিগুলি পরিচালনা করা

ডিভাইস টোকেন একটি নির্দিষ্ট ডিভাইসে আপনার অ্যাপ্লিকেশনটিতে পুশ বিজ্ঞপ্তি প্রেরণের আপনার কী। ডিভাইস টোকেনগুলি পরিবর্তন করতে পারে, সুতরাং আপনার অ্যাপ্লিকেশনটি প্রতিবার এটি চালু হওয়ার সাথে সাথে পুনরায় নিবন্ধন করতে হবে এবং প্রাপ্ত টোকেনটি আপনার সার্ভারে ফেরত দিতে হবে। আপনি যদি ডিভাইস টোকেন আপডেট করতে ব্যর্থ হন তবে দূরবর্তী বিজ্ঞপ্তিগুলি ব্যবহারকারীর ডিভাইসে তাদের পথ তৈরি নাও করতে পারে। যখন ব্যবহারকারী কোনও নতুন ডিভাইস বা কম্পিউটারে ব্যাকআপ ডেটা পুনরুদ্ধার করে বা অপারেটিং সিস্টেমটি পুনরায় ইনস্টল করে তখন ডিভাইস টোকেনগুলি সর্বদা পরিবর্তিত হয়। কোনও নতুন ডিভাইস বা কম্পিউটারে ডেটা স্থানান্তর করার সময়, দূরবর্তী বিজ্ঞপ্তিগুলি সেই ডিভাইসে সরবরাহ করার আগে ব্যবহারকারীর অবশ্যই একবার আপনার অ্যাপ্লিকেশন চালু করতে হবে।


4
ইউআরএল মারা গেছে! দয়া করে এটি ঠিক করুন।
রামিস


4

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


3

এটি পরিবর্তন করা উচিত নয়, যদি না আপনার অ্যাপ্লিকেশনটিকে কোনও নতুন ডিভাইসে পুনরুদ্ধার করা হয় (যারপরে আবার পুশ বিজ্ঞপ্তিগুলি গ্রহণ করতে বলা হবে না, এবং আপনাকে নতুন টোকেনটি গ্রহণ করার জন্য আপনাকে কেবল নিবন্ধিত কল পাঠাবে)।

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


আপনি সঠিক: আপনি টোকেন স্থায়ী বলে ধরে নিতে পারবেন না; এপিএন ডক্সে সংজ্ঞায়িত বিযুক্তির নিয়মগুলি অনুসরণ করুন। আসলে, অ্যাপল ডেভস আমাকে বলেছে যে টোকেনটি শেষ পর্যন্ত পরিবর্তিত হবে (2 বছরের মতো কিছু পরে)।
রবার্ট আল্টম্যান

4
একটি পুরাতন আলোচনার পুনরুত্থান, তবে কারওর পক্ষে এটি দরকারী হতে পারে: আমি একটি স্ব-হোস্ট করা পার্স সার্ভারে এই সপ্তাহে কিছু সময় ব্যয় করেছি এবং পরীক্ষার সমস্যা রয়েছে - দেখা যাচ্ছে যে প্রতিবার আমি আমার অ্যাপ অ্যাপ্লিকেশন রিফ্রেশ করেছি (যেহেতু আমি একটি তৈরি করছিলাম) পাশাপাশি ইউএক্সের সংখ্যাও পরিবর্তিত হয়), প্রতিটি সফ্টওয়্যার ইনস্টল করে টোকেন আইডি পরিবর্তিত হয়েছে ... তাই কি খুব বেশি মজাদার নয়? (দীর্ঘশ্বাস)
ChrisH

3

থেকে - অ্যাপল ডক্স

বিভিন্ন কারণে এপিএনগুলি একটি নতুন ডিভাইস টোকন জারি করতে পারে:

  • ব্যবহারকারী একটি নতুন ডিভাইসে আপনার অ্যাপ্লিকেশন ইনস্টল করে

  • ব্যবহারকারী ব্যাকআপ থেকে ডিভাইস পুনরুদ্ধার করে

  • ব্যবহারকারী অপারেটিং সিস্টেমটি পুনরায় ইনস্টল করে

  • অন্যান্য সিস্টেম-সংজ্ঞায়িত ইভেন্ট

ফলস্বরূপ, অ্যাপ্লিকেশনগুলিকে লঞ্চের সময় অবশ্যই ডিভাইস টোকেনের জন্য অনুরোধ করতে হবে।

অতিরিক্তভাবে:

গুরুত্বপূর্ণ

APNs ডিভাইস টোকেনগুলি পরিবর্তনশীল দৈর্ঘ্যের। তাদের আকার হার্ড-কোড করবেন না।


2

লিঙ্কগুলি দ্রুত আপেল দিয়ে অচল হয়ে যায়! সুতরাং আমি এখন যা পরিষ্কার বলে মনে হচ্ছে তা উদ্ধৃত করছি:

আপনার অ্যাপ্লিকেশনটিতে কখনই ডিভাইস টোকেনগুলি ক্যাশে করবেন না; পরিবর্তে, আপনার যখন প্রয়োজন হয় তখন এগুলি সিস্টেম থেকে নিয়ে যান। এপিএনগুলি আপনার অ্যাপ্লিকেশনে একটি নতুন ডিভাইস টোকেন জারি করে যখন নির্দিষ্ট কিছু ইভেন্ট ঘটে। ডিভাইস টোকেনটি আলাদা হওয়ার গ্যারান্টিযুক্ত, উদাহরণস্বরূপ, যখন কোনও ব্যবহারকারী কোনও ব্যাকআপ থেকে কোনও ডিভাইস পুনরুদ্ধার করে, যখন ব্যবহারকারী কোনও নতুন ডিভাইসে আপনার অ্যাপ্লিকেশন ইনস্টল করে এবং ব্যবহারকারী যখন অপারেটিং সিস্টেমটি পুনরায় ইনস্টল করে। একটি ক্যাশে নির্ভর করার পরিবর্তে টোকেন আনা, এটিকে নিশ্চিত করে যে আপনার সরবরাহকারীর জন্য এপিএনগুলির সাথে যোগাযোগ করার জন্য আপনার কাছে বর্তমান ডিভাইস টোকেন প্রয়োজন। আপনি যখন কোনও ডিভাইস টোকেন আনার চেষ্টা করেন তবে এটি পরিবর্তিত হয় না, আনার পদ্ধতিটি দ্রুত ফিরে আসে।

এই গাইড থেকে


0

অ্যাপল পুশ বিজ্ঞপ্তি স্টাফ রেফারেন্স হিসাবে

ডিভাইস টোকেন একটি নির্দিষ্ট ডিভাইসে আপনার অ্যাপ্লিকেশনটিতে পুশ বিজ্ঞপ্তি প্রেরণের আপনার কী। ডিভাইস টোকেনগুলি পরিবর্তন করতে পারে, সুতরাং আপনার অ্যাপ্লিকেশনটি প্রতিবার এটি চালু হওয়ার সাথে সাথে পুনরায় নিবন্ধন করতে হবে এবং প্রাপ্ত টোকেনটি আপনার সার্ভারে ফেরত দিতে হবে। আপনি যদি ডিভাইস টোকেন আপডেট করতে ব্যর্থ হন তবে দূরবর্তী বিজ্ঞপ্তিগুলি ব্যবহারকারীর ডিভাইসে তাদের পথ তৈরি নাও করতে পারে। যখন ব্যবহারকারী কোনও নতুন ডিভাইস বা কম্পিউটারে ব্যাকআপ ডেটা পুনরুদ্ধার করে বা অপারেটিং সিস্টেমটি পুনরায় ইনস্টল করে তখন ডিভাইস টোকেনগুলি সর্বদা পরিবর্তিত হয়। কোনও নতুন ডিভাইস বা কম্পিউটারে ডেটা স্থানান্তর করার সময়, দূরবর্তী বিজ্ঞপ্তিগুলি সেই ডিভাইসে সরবরাহ করার আগে ব্যবহারকারীর অবশ্যই একবার আপনার অ্যাপ্লিকেশন চালু করতে হবে।

কোনও ডিভাইস টোকেন কখনই ক্যাশে করবেন না; যখনই আপনার প্রয়োজন হয় সিস্টেম থেকে সর্বদা টোকেন পান। যদি আপনার অ্যাপ্লিকেশনটি এর আগে দূরবর্তী বিজ্ঞপ্তিগুলির জন্য নিবন্ধিত হয়, তবে রেজিস্টারফর্মোটোটিকেশন পদ্ধতিতে আবার কল করলে কোনও অতিরিক্ত ওভারহেড ব্যয় হয় না এবং আইওএস উপস্থিত ডিভাইসটির টোকনটি সাথে সাথেই আপনার অ্যাপের প্রতিনিধিকে ফিরিয়ে দেয় returns এছাড়াও, আইওএস আপনার প্রতিনিধি পদ্ধতির কল করে যেকোন সময় ডিভাইস টোকেন পরিবর্তিত হয়, কেবলমাত্র আপনার অ্যাপ্লিকেশন নিবন্ধকরণ বা পুনরায় নিবন্ধকরণের প্রতিক্রিয়া হিসাবে নয়।


0

এই লিঙ্ক অনুসারে ডিভাইস টোকেন

প্রতিটি অনুরোধে অন্তর্ভুক্ত ডিভাইস টোকেনটি বিজ্ঞপ্তি পাওয়ার জন্য ডিভাইসের পরিচয় উপস্থাপন করে। প্রতিটি অনন্য অ্যাপ্লিকেশন এবং ডিভাইস সংমিশ্রণ সনাক্ত করতে এপিএনগুলি ডিভাইস টোকেন ব্যবহার করে। এটি কোনও ডিভাইসে প্রেরিত দূরবর্তী বিজ্ঞপ্তিগুলির রুটিংকে অনুমোদনের জন্য এগুলি ব্যবহার করে। প্রতিবার আপনার অ্যাপ্লিকেশন কোনও ডিভাইসে চললে এটি এপিএন থেকে এই টোকেনটি এনে আপনার সরবরাহকারীর কাছে ফরোয়ার্ড করে। আপনার সরবরাহকারী টোকেন সঞ্চয় করে এবং নির্দিষ্ট অ্যাপ এবং ডিভাইসে বিজ্ঞপ্তি প্রেরণের সময় এটি ব্যবহার করে। টোকেনটি নিজেই অস্বচ্ছ এবং ধ্রুবক, কেবল তখনই পরিবর্তিত হয় যখন কোনও ডিভাইসের ডেটা এবং সেটিংস মুছে ফেলা হয়। কেবলমাত্র এপিএনগুলি একটি ডিভাইস টোকেনটি ডিকোড করতে এবং পড়তে পারে।


0

হ্যাঁ এটি পরিবর্তন করতে পারে। আদর্শভাবে যখনই আমরা কলব্যাক পদ্ধতির মাধ্যমে একটি টোকেন পাই

  • (অকার্যকর) অ্যাপ্লিকেশন: (ইউআইএআইপ্লিকেশন *) অ্যাপ্লিকেশনটি রেজিস্টার ফর রেমোটনোটিকেশনসডভাইসটোকেন: (এনএসডিটা *) ডিভাইস টোকেন

অ্যাপ্লিকেশনটির দূরবর্তী সার্ভারে টোকেনটি নিবন্ধিত / রিফ্রেশ করা উচিত। এটি নিশ্চিত করবে যে এপিএনএস এবং আপনার সার্ভারের টোকেন সিঙ্কে রয়েছে।

অনুযায়ী অ্যাপল ডকুমেন্টেশন ,

অ্যাপ্লিকেশন-নির্দিষ্ট ডিভাইস টোকেন প্রাপ্ত এবং পরিচালনা করা নীচের মত কাজ করে:

দূরবর্তী বিজ্ঞপ্তিগুলির জন্য আপনার অ্যাপ্লিকেশন APN- এর সাথে নিবন্ধভুক্ত করে যখন কোনও নতুন ডিভাইস টোকেন প্রয়োজন হয়, এপিএনগুলি ডিভাইসের শংসাপত্রে থাকা তথ্য ব্যবহার করে একটি উত্পন্ন করে। এটি একটি টোকেন কী ব্যবহার করে টোকেনটিকে এনক্রিপ্ট করে এবং ডিভাইসে এটি ফিরিয়ে দেয়, যেমন মাঝখানে, ডানদিকের নির্দেশক তীর দেখানো হয়। সিস্টেমটি আপনার অ্যাপ্লিকেশনে কল করে ডিভাইস টোকনটি আপনার অ্যাপ্লিকেশনে ফিরিয়ে দেয়: didRegisterForRemoteNotificationsWithDeviceToken: প্রতিনিধি পদ্ধতি। টোকেনটি পাওয়ার পরে, আপনার অ্যাপ্লিকেশনটিকে (প্রতিনিধি পদ্ধতির মধ্যে) অবশ্যই এটি বাইনারি বা হেক্সাডেসিমাল ফর্ম্যাটে আপনার সরবরাহকারীর কাছে ফরোয়ার্ড করতে হবে। আপনার সরবরাহকারী এই টোকেন ছাড়া ডিভাইসে বিজ্ঞপ্তি পাঠাতে পারবেন না। বিশদগুলির জন্য, রিমোট নোটিফিকেশন সহায়তা কনফিগার করতে দূরবর্তী বিজ্ঞপ্তিগুলি পেতে নিবন্ধকরণ দেখুন।


0

অ্যাপ্লিকেশন ইনস্টলেশনতে ডিভাইস টোকেন রিলে।

এর অর্থ হ'ল আপনি যদি অ্যাপ্লিকেশনটি পুনরায় ইনস্টল করেন তবে পরিবর্তন হয় ; আপনি যদি কোনও ব্যাকআপ থেকে এটি করেন তবে এটি পরিপূর্ণ হয় না, একটি iOS আপগ্রেড ইসি ..

এটি ব্যবহার করার সঠিক উপায়, কোনও সমস্যা এড়াতে NSPAppDelegate, পদ্ধতিটিতে প্রতিটি অ্যাপ্লিকেশন লঞ্চে দেওয়া একটিটি পাওয়াdidRegisterForRemoteNotificationsWithDeviceToken

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