คำถามติดแท็ก push-notification

การแจ้งเตือนแบบพุชคือการแจ้งเตือนป้ายหรือเสียงที่ส่งไปยังอุปกรณ์เคลื่อนที่จากเซิร์ฟเวอร์ระยะไกล Apple ส่งการแจ้งเตือนแบบพุชผ่าน Apple Push Notification Service (APNS) อุปกรณ์ Android จะได้รับการแจ้งเตือนแบบพุชผ่านบริการ Google Cloud Messaging (GCM) ในอดีตอุปกรณ์ Android ใช้เฟรมเวิร์ก Cloud to Device Messaging (C2DM) แอพ Windows Phone รับการแจ้งเตือนแบบพุชผ่าน MPNS หรือ WNS ที่ใหม่กว่า

16
Android รองรับการแจ้งเตือนแบบพุชตามเวลาจริงหรือไม่?
ฉันเพิ่งเรียนรู้เกี่ยวกับความสามารถของแอพ iPhone ในการรับการแจ้งเตือน ทันทีเพื่อแจ้งเตือนแอพไปที่แอพ สิ่งนี้มีให้ในรูปแบบของการแจ้งเตือนแบบพุชโพรโทคอลแบบ bespoke ซึ่งช่วยให้การเชื่อมต่อข้อมูลกับ iPhone และข้อความไบนารีแพ็คเก็ตไปยังแอปซึ่งปรากฏขึ้นอย่างรวดเร็วอย่างไม่น่าเชื่อระหว่าง 0.5-5 วินาที เวลาตอบสนอง. สิ่งนี้ถูกส่งเป็นข้อมูล - แทนที่จะเป็น SMS - ในแพ็คเก็ตขนาดเล็กมากที่ถูกเรียกเก็บเงินซึ่งเป็นส่วนหนึ่งของแผนข้อมูลที่ไม่ได้เป็นข้อความขาเข้า ฉันอยากจะรู้ว่าถ้าใช้ Android มีสิ่งอำนวยความสะดวกที่คล้ายกันหรือไม่ว่าจะเป็นไปได้ที่จะใช้สิ่งที่ใกล้เคียงกับสิ่งนี้โดยใช้ Android API เพื่อชี้แจงฉันกำหนดที่คล้ายกัน: ไม่ใช่ข้อความ SMS แต่เป็นโซลูชันที่ขับเคลื่อนข้อมูล ตามเวลาจริงเท่าที่จะทำได้ สามารถปรับขนาดได้เช่นในฐานะที่เป็นส่วนหนึ่งของเซิร์ฟเวอร์ของแอพมือถือฉันสามารถแจ้งเตือนแอปนับพันได้ในไม่กี่วินาที ฉันขอบคุณที่แอพสามารถดึงตามสไตล์คำขอ / ตอบกลับของ HTTP แต่ในอุดมคติฉันไม่ต้องการที่จะลงคะแนนเลือกตั้งอย่างหนักเพื่อตรวจสอบการแจ้งเตือน นอกเหนือจากที่มันเป็นเหมือนหยดแผนข้อมูล

7
สร้างไฟล์. pem ที่ใช้เพื่อตั้งค่า Apple Push Notifications
ฉันพยายามและพยายามสร้างไฟล์. pem ทุกครั้งที่สร้างใบรับรองจากบัญชีของลูกค้าและสร้างไฟล์. pem โดยใช้เทอร์มินัล แต่ก็ไม่มีประโยชน์ ใครสามารถให้กระบวนการทีละขั้นตอนได้บ้าง?

7
iOS จะเปิดแอพของฉันเป็นพื้นหลังหรือไม่หากผู้ใช้นั้นถูกบังคับให้ออกจากระบบ?
ฉันเรียกใช้การดึงพื้นหลังโดยใช้การcontent-availableตั้งค่าสถานะในการแจ้งเตือนแบบพุช ฉันมีfetchและremote-notification UIBackgroundModesเปิดใช้งาน นี่คือการใช้งานที่ฉันใช้ใน AppDelegate.m ของฉัน: - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { NSLog(@"Remote Notification Recieved"); UILocalNotification *notification = [[UILocalNotification alloc] init]; notification.alertBody = @"Looks like i got a notification - fetch thingy"; [application presentLocalNotificationNow:notification]; completionHandler(UIBackgroundFetchResultNewData); } เมื่อแอปทำงานในพื้นหลังก็จะทำงานได้ดี (ได้รับการแจ้งเตือนและแอปพลิเคชันเรียกใช้การแจ้งเตือนในท้องถิ่น "ดูเหมือนว่าฉันได้รับการแจ้งเตือน" ตามที่ควรทำ อย่างไรก็ตามเมื่อแอพไม่ได้ทำงานและได้รับการแจ้งเตือนแบบพุชด้วยการcontent-availableตั้งค่าสถานะแอพจะไม่เปิดใช้งานและdidRecieveRemoteNotificationจะไม่เรียกวิธีการมอบสิทธิ์ วิดีโอ WWDC มีอะไรใหม่ใน Multitasking (# 204 จาก …

6
เทคโนโลยีการแจ้งเตือนแบบพุชทำงานบน Android อย่างไร
Google นำคุณลักษณะการแจ้งเตือนแบบพุชมาใช้อย่างไร มันทำงานผ่านการสำรวจโดยบริการที่ทำงานในพื้นหลังหรือในวิธีที่แตกต่างกันอย่างไร

18
รับการแจ้งเตือนแบบพุชขณะที่แอพอยู่เบื้องหน้า iOS
ฉันใช้บริการแจ้งเตือนแบบพุชในแอพของฉัน เมื่อแอปอยู่ในพื้นหลังฉันสามารถเห็นการแจ้งเตือนบนหน้าจอการแจ้งเตือน (หน้าจอแสดงเมื่อเราปัดลงจากด้านบนของอุปกรณ์ iOS) แต่ถ้าแอปพลิเคชันอยู่ด้านหน้าวิธีการมอบสิทธิ์ - (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo กำลังถูกเรียกใช้ แต่การแจ้งเตือนไม่แสดงในหน้าจอการแจ้งเตือน ฉันต้องการแสดงการแจ้งเตือนบนหน้าจอการแจ้งเตือนโดยไม่ขึ้นกับว่าแอปนั้นอยู่ในแบ็คกราวน์หรือโฟร์กราวน์ ฉันเหนื่อยกับการหาทางออก ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก

14
รีเซ็ตการตั้งค่าการแจ้งเตือนแบบพุชสำหรับแอป
ฉันกำลังพัฒนาแอพด้วยการแจ้งเตือนแบบพุช ในการตรวจสอบวิธีการโต้ตอบของผู้ใช้ที่เป็นไปได้ทั้งหมดฉันต้องการทดสอบแอปของฉันเมื่อผู้ใช้ปฏิเสธที่จะเปิดใช้งานการแจ้งเตือนแบบพุชสำหรับแอปของฉันในช่วงเริ่มแรก อย่างไรก็ตามกล่องโต้ตอบ (ริเริ่มโดยregisterForRemoteNotificationTypes) จะปรากฏเพียงหนึ่งครั้งต่อแอป ฉันจะรีเซ็ตหน่วยความจำของ iPhone OS ของแอพของฉันได้อย่างไร การลบแอพและติดตั้งใหม่ไม่ได้ช่วย

26
ตรวจสอบว่าแอปเปิดตัว / เปิดจากการแจ้งเตือนแบบพุช
เป็นไปได้ไหมที่จะรู้ว่าแอปเปิดตัว / เปิดจากการแจ้งเตือนแบบพุชหรือไม่? ฉันเดาว่าจะมีกิจกรรมเปิดตัวที่นี่: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions != nil) { // Launched from push notification NSDictionary *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; } } อย่างไรก็ตามฉันจะตรวจจับได้อย่างไรว่าเปิดขึ้นมาจากการแจ้งเตือนแบบพุชเมื่อแอปอยู่ในพื้นหลัง

14
การส่งข้อมูลแบบเงียบไม่ส่งไปยังแอปใน iOS 11
ฉันสังเกตเห็นว่าใน iOS 11 เบต้า 2 การแจ้งเตือนแบบเงียบจะไม่ถูกส่งไปapplication:didReceiveRemoteNotification:fetchCompletionHandlerยังสถานะของแอพ (พื้นหลัง / เบื้องหน้า) ฉันใช้UIApplicationDelegeteวิธีนี้application:didReceiveRemoteNotification:fetchCompletionHandlerและส่งการแจ้งเตือนแบบเงียบ ๆ ดังต่อไปนี้ { "aps": { "content-available": 1 }, "mydata": { "foo": "bar" } } แต่วิธีการมอบสิทธิ์ไม่ได้ถูกเรียกบน iOS 11 ใช้งานได้ดีกับ iOS เวอร์ชันอื่นและส่วนเอกสารประกอบการกำหนดค่าการแจ้งเตือนแบบเงียบไม่ได้กล่าวถึงสิ่งอื่นใด นี่เป็นข้อบกพร่องใน iOS 11 หรือฉันคิดถึงสิ่งใหม่ใน iOS 11 หรือไม่ โปรดทราบว่าฉันไม่ได้พูดถึงหรือใช้UserNotificationกรอบซึ่งไม่จำเป็นสำหรับการส่งสัญญาณเงียบ นี่คือตัวอย่างโครงการที่แสดงปัญหา (คุณจะต้องตั้งค่าบันเดิลของคุณเอง) เมื่อคุณส่งตัวอย่างโครงการและส่งส่วนของข้อมูลด้านบนไปยังแอปคุณสามารถใช้คอนโซล macOS เพื่อดูว่ามีการส่งการพุชไปยังอุปกรณ์อย่างถูกต้อง แต่ไม่ส่งไปยังแอป อัพเดท 10.08 ปรากฏว่าพฤติกรรมนั้นเป็นแบบสุ่ม บางครั้งหลังจากรีสตาร์ทอุปกรณ์น้ำหนักบรรทุกจะถูกส่งอย่างถูกต้อง แต่มันก็หยุดทำงานหลังจากนั้นไม่นาน อย่างที่คุณเห็นในภาพหน้าจอต่อไปนี้การพุชที่ทำเครื่องหมายเป็น …

23
จะแก้ไขสตริง“ ไม่พบสตริงการให้สิทธิ์ 'aps-environment' ที่ถูกต้องสำหรับแอปพลิเคชัน” ใน Xcode 4.3 ได้อย่างไร
ฉันพยายามอย่างหนักในการสร้างแอพ iOS ที่เรียบง่ายซึ่งสามารถรับการแจ้งเตือนแบบพุชได้ เหตุผลเดียวของฉันในการทำเช่นนี้คือการสร้างขั้นตอนสำหรับสมาชิกในทีมอื่นที่จะใช้และไม่สามารถหาเวอร์ชันล่าสุดของคำแนะนำดังกล่าวที่ทำงานได้จากที่อื่นบนเว็บ ร้านค้าของเราค่อนข้างใหม่สำหรับ iOS dev โดยส่วนตัวแล้วฉันไม่มีประสบการณ์อย่างสมบูรณ์กับ iOS dev และ Xcode ฉันพบบทเรียนหลายบทความและโพสต์ปัญหาจาก Apple และที่อื่น ๆ และฉันรู้สึกว่าฉันอาจจะอยู่ที่นั่น ... ที่นี่คือที่ที่ฉันต้องไป (โปรดทราบว่าฉันใช้ Xcode 4.3 และพยายามเริ่มปรับใช้กับ iOS 5.1 เป็นครั้งแรกและฉันรวบรวมว่าบางสิ่งอาจเปลี่ยนไปเมื่อเร็ว ๆ นี้เทียบกับ Xcode เวอร์ชันก่อนหน้านี้ แต่อีกครั้งฉันใหม่ทั้งหมด สิ่งนี้ - และพบว่ามันสับสนและสับสนอย่างสมบูรณ์): 1) ฉันมีโปรไฟล์การจัดสรรใน iPhone ซึ่งเปิดใช้งานการพุช 2) ในโครงการทดสอบ Xcode ของฉันฉันได้รับโปรไฟล์การจัดสรรที่เลือกเป็นข้อมูลประจำตัวการเซ็นชื่อ (ในการตั้งค่า Build> การเซ็นรหัส) 3) ฉันมีตัวระบุบันเดิลของฉันภายใต้สรุปและข้อมูล> ตั้งค่าคุณสมบัติเป้าหมาย iOS ที่กำหนดเองอย่างถูกต้อง …

11
ความยาวสูงสุดของข้อความแจ้งเตือนผลักดันคืออะไร?
ความยาวสูงสุดของข้อความแจ้งเตือนของการแจ้งเตือนแบบพุชของ iOS คืออะไร เอกสารระบุว่าน้ำหนักบรรทุกการแจ้งเตือนจะต้องมีการภายใต้ 256 ไบต์รวมแต่แน่นอนต้องมีขีด จำกัด ของตัวละครที่เฉพาะเจาะจงสำหรับข้อความแจ้งเตือน

6
การดีบักแอปเมื่อเปิดตัวโดยการแจ้งเตือนแบบพุช
ฉันกำลังพัฒนาแอพที่ได้รับการแจ้งเตือนแบบพุช ฉันมีทั้งหมดนี้ทำงานได้ 100% ผ่านหน้า PHP มีหลายประเภทของการแจ้งเตือนแบบพุชที่แอปของฉันสามารถรับได้ PHP จัดการสิ่งนี้และส่งแพ็กเก็ตข้อมูลที่แตกต่างกันไปยังแอพของฉันซึ่งทั้งหมดได้รับดี อย่างไรก็ตามเมื่อผู้ใช้ "ดู" การแจ้งเตือนและแอปของฉันเปิดขึ้นเห็นได้ชัดว่าฉันต้องการดำเนินการที่แตกต่างจากที่ฉันทำหากผู้ใช้เพิ่งเปิดแอปด้วยตนเองและยิ่งไปกว่านั้นการดำเนินการที่แตกต่างกันขึ้นอยู่กับประเภทการแจ้งเตือนแบบพุช ฉันทำงานได้ดี ... หนึ่งในประเภทการกดของฉันควรจะเปิด UIView ที่เชื่อมต่อหลาย ๆ เซิร์ฟเวอร์ไปยังเซิร์ฟเวอร์ต่างๆและต่อรองข้อมูลไปมา UIView นี้ใช้งานได้ดีเมื่อถูกเรียกใช้จากเมนูหลักอย่างไรก็ตามเมื่อการแจ้งเตือนแบบพุชของฉันเรียกให้ UIView นี้ปรากฏการเชื่อมต่อซ็อกเก็ตจะไม่ทำงานตามที่คาดไว้ ตอนนี้คำถามของฉันไม่ได้เกี่ยวกับซ็อกเก็ต แต่มีมากกว่านั้น - คุณจะแก้ปัญหาดังกล่าวได้อย่างไร ?? จากสิ่งที่ฉันบอกได้ (ฉันค่อนข้างใหม่) เมื่อแอปเปิดตัวจากการแจ้งเตือนแบบพุชไม่มีวิธีใดที่จะเชื่อมโยงการดำเนินการนั้นกับดีบักเกอร์ / คอนโซล / ฯลฯ ... ฉันมีช่วงเวลาที่ยากลำบากในการพยายามดีบักโค้ดโดยใช้ UIAlertViews เนื่องจากมีการสื่อสารกลับไปกลับมาระหว่างเซิร์ฟเวอร์ต่างๆ คำแนะนำใด ๆ ที่คุณมีสำหรับฉันจะได้รับการชื่นชมอย่างมาก

10
ไอคอนการแจ้งเตือนพร้อมระบบ Firebase Cloud Messaging ใหม่
เมื่อวานนี้ Google ได้นำเสนอที่ Google I / O ระบบการแจ้งเตือนใหม่ที่ใช้ Firebase ใหม่ ฉันลองใช้ FCM (Firebase Cloud Messaging) ใหม่นี้ด้วยตัวอย่างบน Github ไอคอนของการแจ้งเตือนจะเป็นic_launcherเสมอทั้งๆที่ฉันได้ประกาศเฉพาะที่วาดได้ ทำไม? ด้านล่างรหัสอย่างเป็นทางการสำหรับจัดการข้อความ public class AppFirebaseMessagingService extends FirebaseMessagingService { /** * Called when message is received. * * @param remoteMessage Object representing the message received from Firebase Cloud Messaging. */ // [START receive_message] …

4
ต่ออายุใบรับรอง Push และทำให้ App Store App ปัจจุบันใช้งานได้
ฉันมีแอพในแอพสโตร์ซึ่งใช้ iOS Provisioning Profile (การแจกจ่าย) ซึ่งหมดอายุแล้ว โปรไฟล์นี้มี Push Certificate ที่หมดอายุแล้วด้วย (และจะไม่ปรากฏอีกต่อไปในพอร์ทัล) คำถามที่ 1 : มีวิธีสร้างใบรับรองพุชใหม่แล้วต่ออายุโปรไฟล์หรือไม่? (ฉันยังมีใบรับรองการพุช (หมดอายุ) บนพวงกุญแจของฉัน)? คำถามที่ 2 : ฉันจำเป็นต้องส่งแอปไปยัง app store อีกครั้งด้วยโปรไฟล์ใหม่ที่มีใบรับรอง Push ใหม่หรือไม่ เนื่องจากใบรับรองการพุชหมดอายุฉันจึงไม่สามารถส่งการแจ้งเตือนไปยังผู้ใช้ที่มีอยู่ของแอปได้

19
รับ UIViewController ที่แสดงปัจจุบันบนหน้าจอใน AppDelegate.m
กระแสUIViewControllerบนหน้าจอจำเป็นต้องตอบสนองต่อการแจ้งเตือนแบบพุชจาก APN โดยการตั้งค่ามุมมองป้ายบางส่วน แต่ฉันจะหาUIViewControllerวิธีการapplication:didReceiveRemoteNotification: จากAppDelegate.m? ฉันพยายามใช้self.window.rootViewControllerเพื่อรับการแสดงผลปัจจุบันUIViewControllerอาจเป็นUINavigationViewControllerตัวควบคุมมุมมองหรือประเภทอื่น ๆ และฉันพบว่าvisibleViewControllerคุณสมบัติของUINavigationViewControllerสามารถใช้เพื่อรับUIViewControllerบนหน้าจอ แต่จะทำอย่างไรถ้าไม่ใช่UINavigationViewController? ขอความช่วยเหลือใด ๆ ! รหัสที่เกี่ยวข้องมีดังต่อไปนี้ AppDelegate.m ... - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { //I would like to find out which view controller is on the screen here. UIViewController *vc = [(UINavigationViewController *)self.window.rootViewController visibleViewController]; [vc performSelector:@selector(handleThePushNotification:) withObject:userInfo]; } ... ViewControllerA.m - (void)handleThePushNotification:(NSDictionary *)userInfo{ …

11
กำลังลงทะเบียนสำหรับการแจ้งเตือนแบบพุชใน Xcode 8 / Swift 3.0 หรือไม่
ฉันกำลังพยายามให้แอปทำงานในXcode 8.0และพบข้อผิดพลาด ฉันรู้ว่ารหัสนี้ใช้งานได้ดีในเวอร์ชันก่อนหน้าของ swift แต่ฉันสมมติว่ารหัสนี้มีการเปลี่ยนแปลงในเวอร์ชันใหม่ นี่คือรหัสที่ฉันพยายามเรียกใช้: let settings = UIUserNotificationSettings(forTypes: [.Sound, .Alert, .Badge], categories: nil) UIApplication.sharedApplication().registerUserNotificationSettings(settings) UIApplication.shared().registerForRemoteNotifications() ข้อผิดพลาดที่ฉันได้รับคือ "ป้ายกำกับอาร์กิวเมนต์ '(forTypes :, หมวดหมู่ :)' ไม่ตรงกับการโอเวอร์โหลดใด ๆ ที่มีอยู่" มีคำสั่งอื่นที่ฉันสามารถลองเพื่อให้มันใช้งานได้หรือไม่?

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