পুশ বিজ্ঞপ্তি সতর্কতা পাঠের সর্বাধিক দৈর্ঘ্য কত?


142

কোনও আইওএস পুশ বিজ্ঞপ্তির সতর্কতা পাঠের সর্বাধিক দৈর্ঘ্য কত?

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

উত্তর:


245

সতর্কতা পাঠ্যের জন্য আসল সীমা কোথাও নথিভুক্ত করা হয় না। ডকুমেন্টেশনের একমাত্র জিনিসটি হ'ল:

আইওএস 8 এবং তার পরে, একটি বিজ্ঞপ্তি পেইড লোডের জন্য অনুমোদিত সর্বোচ্চ আকার 2 কিলোবাইট; অ্যাপল পুশ বিজ্ঞপ্তি পরিষেবা এই সীমা অতিক্রম করে এমন কোনও বিজ্ঞপ্তি প্রত্যাখ্যান করে। (আইওএস 8 এর আগে এবং ওএস এক্সে, সর্বাধিক পে-লোডের আকার 256 বাইট।

এটিই আমি কিছু পরীক্ষা-নিরীক্ষা করে দেখতে পেলাম।

  • সতর্কতা: আইওএস 7 এর আগে, সতর্কতা প্রদর্শনের সীমা ছিল 107 টি অক্ষর। বড় বার্তাগুলি কেটে ফেলা হয়েছে এবং প্রদর্শিত বার্তার শেষে আপনি একটি "..." পাবেন। আইওএস 7 এর মাধ্যমে সীমাটি 235 টি অক্ষরে উন্নীত হয়েছে বলে মনে হচ্ছে। আপনি যদি 8 টি লাইনের ওপরে যান তবে আপনার বার্তাটিও কেটে যাবে।
  • ব্যানার: ব্যানারগুলি প্রায় 62 টি অক্ষর বা 2 লাইন কেটে যায়।
  • বিজ্ঞপ্তি কেন্দ্র: বিজ্ঞপ্তি কেন্দ্রের বার্তাগুলি প্রায় 110 টি অক্ষর বা 4 টি লাইন কেটে দেওয়া হয়।
  • লক স্ক্রিন: একটি বিজ্ঞপ্তি কেন্দ্র হিসাবে একই।

ঠিক যেমন এখানে একটি অনুস্মারক অফিসিয়াল ডকুমেন্টেশন থেকে খুব ভাল নোট:

প্রয়োজনে আইওএস আপনার বার্তাটি কেটে দেয় যাতে এটি প্রতিটি বিজ্ঞপ্তি সরবরাহের স্টাইলে ভাল ফিট করে; সেরা ফলাফলের জন্য, আপনার বার্তাটি ছিন্ন করা উচিত নয়।


8
স্পষ্ট করে বলা উচিত যে কোনও অ্যাপ্লিকেশন ইউআইএলআর্টভিউয়ের কোনও ডিসপ্লে সীমা নেই; নির্দিষ্ট দৈর্ঘ্যের উপরের পাঠ্যটি একটি স্ক্রোল ভিউতে যাবে। কোনও এসএমএস বা পুশ অ্যালার্টের সম্ভবত 107-চরিত্রের সীমা রয়েছে।
আজদেব

1
এবং প্রদর্শিত পাঠ্যটি পে-লোডের মাধ্যমে সীমাবদ্ধ নয়, কারণ আপনি যখন স্থানীয়করণ পদ্ধতি ব্যবহার করেন তখন এটি আর 1: 1 এর সাথে মেলে না। পে-লোড সংক্ষিপ্ত হতে পারে তবে চূড়ান্ত বার্তাটি আরও দীর্ঘ হতে পারে। প্রশ্ন বার্তা প্রদর্শন সম্পর্কে যা পেডলোড সর্বাধিক দৈর্ঘ্যের সাথে কঠোরভাবে সম্পর্কিত নয়।
মার্সিন

1
আমি স্যান্ডবক্সে একটি বিশাল পেডলোড প্রেরণ করতে পারি এবং এটি বিতরণ করা হবে তবে প্রোডাকশন সার্ভারটি কেবলমাত্র 256 বাইটে এবং আরও একটি বাইট না করে খুব সীমাবদ্ধ ছিল।
ডক্টরডিবিএক্স

কেউ কি GCM অ্যান্ড্রয়েড পুশ নটিফ ডিসপ্লে পাঠ্যের দৈর্ঘ্য বলতে পারে?
হরিকৃষ্ণন

1
১. ভয়েস ওভার ইন্টারনেট প্রোটোকল (ভিওআইপি) বিজ্ঞপ্তিগুলির জন্য, সর্বোচ্চ পে-লোডের আকার 5 কেবি (5120 বাইট)। ২. অন্যান্য সমস্ত দূরবর্তী বিজ্ঞপ্তির জন্য, সর্বোচ্চ পে-লোডের আকার 4 কেবি (4096 বাইট)।
বিক্রম

26

এটি 236 বাইট হওয়া উচিত। আমি যতদূর জানি সতর্কতা পাঠ্যের আকারের উপর কোনও বিধিনিষেধ নেই, তবে কেবলমাত্র মোট পেওলড আকার। সুতরাং বিবেচনা করে যদি পেডোলটি ন্যূনতম হয় এবং কেবলমাত্র সতর্কতার তথ্য থাকে, তবে এটি দেখতে এমন হওয়া উচিত:

{"aps":{"alert":""}}

সতর্কতার স্ট্রিংয়ের ভিতরে রাখতে 236 বাইট রেখে 20 টি অক্ষর (20 বাইট) লাগে। ASCII এর সাথে এটি 236 টি অক্ষর এবং UTF8 এবং UTF16 এর সাথে কম হতে পারে।


এএসসিআইআই এনকোডিং জেএসএন স্পেক লঙ্ঘন করে, যার জন্য ইউটিএফ -8, ইউটিএফ-16 এলই, ইউটিএফ-16 বিই, ইউটিএফ -32 এলই, বা ইউটিএফ -32 বিই দরকার। Ietf.org/rfc/rfc4627.txt দেখুন ; পৃষ্ঠা 4
অ্যারন ব্র্যাজার

14
এএসসিআইআইটি ইউটিএফ -8 এর একটি উপসেট, তাই তারের উপর দিয়ে 8-বিট ASCII প্রেরণ করা সর্বদা নিরাপদ।
প্যাট্রিক হর্ন

শুধু কৌতূহল, কেন আপনি উল্লেখ করেছেন তখন এটি 236 বাইট হওয়া উচিত। ..আমি কাটা কাটা ইস্যু নিয়ে চলছে ... আমি যদি মোট চরের দৈর্ঘ্য গণনা করি তবে এটি 1024 চর বেশি হবে না, ট্রান্সকেট সতর্কতা বার্তার চর দৈর্ঘ্য 509 আমি পাচ্ছি। সংক্ষিপ্ত প্রতিক্রিয়ার সম্ভাব্য কারণ কী হতে পারে। যেকোনো পরামর্শ !!
হিতেন্দ্র যোশি

15

বর্ধিত ফর্ম্যাট বিজ্ঞপ্তির সীমাটি এখানে নথিভুক্ত করা হয়েছে

এটি স্পষ্টভাবে বলে:

পে-লোড অবশ্যই 256 বাইটের বেশি না হওয়া উচিত এবং নাল-টার্মিনেট হওয়া উচিত নয়।

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

সতর্কতার পাঠ্য হিসাবে, যদি আপনি এটি 256 মোট পেওলড আকারে ফিট করতে পারেন তবে এটি আইওএস দ্বারা প্রদর্শিত হবে। স্ট্যাটাস বারে প্রদর্শিত বার্তাটি তারা ছিন্ন করে তবে আপনি বিজ্ঞপ্তি কেন্দ্রটি খুললে পুরো বার্তাটি সেখানে। এমনকি এটি নিউলাইন চরিত্রগুলিও সরবরাহ করে \n


12

সম্পাদনা করুন:

সর্বশেষ তথ্য সহ উত্তর আপডেট করা হচ্ছে

কোনও বিজ্ঞপ্তি পেইড লোডের জন্য অনুমোদিত সর্বোচ্চ আকার নির্ভর করে আপনি কোন সরবরাহকারী এপিআই নিযুক্ত করেন।

লিগ্যাসি বাইনারি ইন্টারফেস ব্যবহার করার সময়, সর্বাধিক পেডলোডের আকার 2KB (2048 বাইট)।

HTTP / 2 সরবরাহকারী এপিআই ব্যবহার করার সময়, সর্বাধিক পেডলোডের আকার 4KB (4096 বাইট) হয়। ভয়েস ওভার ইন্টারনেট প্রোটোকল (ভিওআইপি) বিজ্ঞপ্তিগুলির জন্য, সর্বোচ্চ আকার 5KB (5120 বাইট)

পুরানো উত্তর: অ্যাপল ডকের মতে আইওএস 8 এর পেওলোড 2 কিলোবাইট (2048 বাইট) এবং আইওএস 7 এবং এর আগের 256 বাইট রয়েছে। (লিঙ্কটি সরানো হয়েছে কারণ এটি একটি পুরানো ডক ছিল এবং এখন এটি ভেঙে গেছে)

সুতরাং আপনি যদি কেবল পাঠ্য প্রেরণ করেন তবে আপনার কাছে 2028 (আইওএস 8+) বা 236 (আইওএস 7-) অক্ষর উপলব্ধ রয়েছে।

নোটিফিকেশন পেললোড

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

তবে আমি পরীক্ষা করেছি এবং আপনি আইওএস 7 ডিভাইসে 2 কিলোবাইট প্রেরণ করতে পারেন এমনকি উত্পাদন কনফিগারেশনেও


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

10

এখানে কিছু স্ক্রিনশট রয়েছে (ব্যানার, সতর্কতা এবং বিজ্ঞপ্তি কেন্দ্র)

সতর্কপতাকানোটিশ কেন্দ্র


7

নিয়মিত রিমোট নোটিফিকেশনের জন্য, সর্বাধিক আকার 4KB (4096 বাইট) https://developer.apple.com/library/content/docamentation/NetworkingInternet/Concepual/RemoteNotificationsPG/CreatingtheNotificationsPayload.html

### আইওএসের আকারের সীমা 256 বাইট, তবে আইওএস 8 এর প্রবর্তন থেকে 2 কেবিতে পরিবর্তন হয়েছে!

https://forums.aws.amazon.com/ann.jspa?annID=2626

আইওএস 8 এর সাহায্যে অ্যাপল এমন নতুন বৈশিষ্ট্য প্রবর্তন করেছে যা মোবাইল ধাক্কা বিজ্ঞপ্তিগুলির জন্য কিছু ধনী নতুন ব্যবহারের ক্ষেত্রে সক্ষম করে - ইন্টারেক্টিভ পুশ বিজ্ঞপ্তিগুলি, তৃতীয় পক্ষের উইজেট এবং বৃহত্তর (2 কেবি) পেডলোড। আজ, আমরা আইওএস 8 এর সাথে ঘোষিত নতুন মোবাইল পুশ সক্ষমতার পক্ষে সমর্থন জানাতে পেরে সন্তুষ্ট We


5

ডাব্লুডাব্লুডিসি 713_ এইচডি_ওয়াহট_নিউ_ইন_ওস_নোটফিকেশন অনুসারে। পুশ পেইড লোডের জন্য পূর্বের আকারের সীমা 256 বাইট এখন আইওএস 8 এর জন্য 2 কিলোবাইটে বাড়ানো হয়েছে ।

সূত্র: http://asciiwwdc.com/2014/sessions/713?q=notifications#1414.0


@ ডিজেট দুঃখিত, আমি এই পয়েন্টে কোনও অফিসিয়াল নোট পাই না তবে এটি সর্বশেষ ডাব্লুডব্লিউডিসির সময় আনুষ্ঠানিকভাবে ঘোষণা করা হয়েছে। এমনকি আরবান এয়ারশিপ এটি বিহ্বল করে জানিয়েছে: Citizenhiphip.com/blog/2014/07/02/…
klefevre

কেউ যদি আপেল লিঙ্ক চায় তবে স্লাইডগুলি / ভিডিও এখানে দেওয়া আছে: developer.apple.com/videos/wwdc/2014 - "আইওএস বিজ্ঞপ্তিতে নতুন কী আছে" অনুসন্ধান করুন
ডিজেইট

@ kl91 এটি ঠিক আছে। মন্তব্যগুলির সাথে সিঙ্কের বাইরে, উত্সটি পেয়ে গেলে আমি আমার মন্তব্য মুছলাম। আপনি যদি পিডিএফ ডাউনলোড করেন তবে এটি 82 পৃষ্ঠায় রয়েছে
ডিজেইট

1
@ kl94, সুতরাং যদি অ্যাপ্লিকেশনটি এখনও আইওএস 7 এর জন্য টার্গেটিং সমর্থন করে, 2 কেবি আকারের সীমাটি আইওএস 7 ডিভাইসে প্রেরণ বিজ্ঞপ্তিগুলি প্রয়োগ করতে প্রয়োগ করবে? বা প্রশ্নটি হ'ল: সমস্ত ধাক্কা বিজ্ঞপ্তির জন্য নতুন 2 কেবি, এটি কোন প্ল্যাটফর্মকে লক্ষ্য করে তা বিবেচনা করে না?
জিং

@ জিং আমরা আশাবাদীভাবে ভাবতে পারি যে প্রতিটি প্ল্যাটফর্মে নতুন আকারের সীমা প্রয়োগ করা হবে।
klefevre

1

অ্যাপল পুশ বিভিন্ন কারণে একটি স্ট্রিং প্রত্যাখ্যান করবে। আমি পুশ ডেলিভারির জন্য বিভিন্ন ধরণের পরিস্থিতি পরীক্ষা করেছি এবং এটি ছিল আমার ওয়ার্কিং ফিক্স (পাইথনে):

#  Apple rejects push payloads > 256 bytes (truncate msg to < 120 bytes to be safe)
if len(push_str) > 120:
    push_str = push_str[0:120-3] + '...'

# Apple push rejects all quotes, remove them
import re
push_str = re.sub("[\"']", '', push_str)

# Apple push needs to newlines escaped
import MySQLdb
push_str = MySQLdb.escape_string(push_str)

# send it
import APNSWrapper
wrapper = APNSWrapper.APNSNotificationWrapper(certificate=...)
message = APNSWrapper.APNSNotification()
message.token(...)
message.badge(1)
message.alert(push_str)
message.sound("default")
wrapper.append(message)
wrapper.notify()

ধন্যবাদ। আমি মনে করি গুরুত্বপূর্ণ বিটটি 120 এর পিছনে যুক্তি যুক্তিযুক্ত, যদিও - আপনি কীভাবে এই সংখ্যাটিতে পৌঁছলেন? যদিও কোট এবং নিউলাইনগুলি পরে দৈর্ঘ্য কাটা কি আরও ভাল হবে, যেহেতু এটি অ্যাপলকে প্রেরিত চূড়ান্ত স্ট্রিংয়ের দৈর্ঘ্যের আরও ভাল উপস্থাপনা?
রূপ

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


1

অ্যাপল আপডেট ডক:

প্রতিটি রিমোট বিজ্ঞপ্তিতে একটি পে-লোড অন্তর্ভুক্ত থাকে। পে-লোডে সিস্টেমটি ব্যবহারকারীকে কীভাবে সতর্ক করা উচিত সেই সাথে আপনার প্রদত্ত যে কোনও কাস্টম ডেটা সম্পর্কিত তথ্য রয়েছে। কোনও বিজ্ঞপ্তি পেইড লোডের জন্য অনুমোদিত সর্বোচ্চ আকার নির্ভর করে আপনি কোন সরবরাহকারী এপিআই নিযুক্ত করেন। HTTP / 2 সরবরাহকারী এপিআই ব্যবহার করার সময়, সর্বাধিক পেডলোডের আকার 4096 বাইটলিগ্যাসি বাইনারি ইন্টারফেস ব্যবহার করে , সর্বাধিক পেডলোডের আকার 2048 বাইট। অ্যাপল পুশ নোটিফিকেশন পরিষেবা (এপিএন) এমন কোনও বিজ্ঞপ্তি অস্বীকার করে যা সর্বাধিক আকারের বেশি ex


0

আমার পরীক্ষা এখানে দেখুন

আমি 33 টি পর্যন্ত চীনা অক্ষর এবং কাস্টম মানগুলির 13 বাইট প্রেরণ করতে পারি।

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