2013-08-14 36 views
5

Đây là bài đăng đầu tiên của tôi trên diễn đàn, vì vậy hãy giáo dục cho tôi nếu tôi nhận được thẻ, diễn đàn hoặc nội dung sai.Gửi thông báo đẩy trong ứng dụng không phải gốc (ứng dụng web)?

Tôi đang phát triển một ứng dụng nhắm mục tiêu iPhone và Android, là mạng xã hội dựa trên vị trí theo thời gian thực. Ứng dụng sẽ không được triển khai thông qua thị trường/cửa hàng ứng dụng.

Từ những gì tôi hiểu tùy chọn duy nhất của tôi là tạo một ứng dụng web (HTML5/JS). Tất cả các chức năng nên được hỗ trợ ngoại trừ một nhu cầu gửi thông báo đẩy cho người dùng khác.

Các tùy chọn, tôi đã xem xét là: - Gửi email, tuy nhiên đây không phải là thời gian thực. - Gửi SMS, tuy nhiên điều này có một số chi phí đáng kể liên quan. - Liên kết tới IM của sự lựa chọn cho người dùng và gửi thông báo qua IM

Khi tôi hiểu tất cả các khung nền tảng như PhoneGab biên dịch thành bản địa và yêu cầu được triển khai thông qua các cửa hàng ứng dụng để tận dụng API của họ (sửa tôi nếu tôi sai).

Mọi công việc dễ dàng xung quanh một khung ứng dụng thông báo dựa trên vị trí, đẩy được cung cấp bên ngoài cửa hàng ứng dụng?

EDIT: Tôi hy vọng sẽ phân phối ứng dụng thông qua trang web.

EDIT: Dịch vụ ứng dụng là một khái niệm hẹn hò ở phía hơi sleezy vì vậy tôi sợ nó sẽ không vượt qua các cửa xem xét và do đó không thể phân phối trong các cửa hàng. Tất nhiên tôi có thể thử sử dụng PhoneGap hoặc Titanium và sau đó làm webapp nếu nó không vượt qua.

Cám ơn sự ủng hộ của bạn!

+0

Bạn đã nói cách bạn ** không ** muốn phân phối ứng dụng, nhưng cách ** làm ** bạn muốn phân phối ứng dụng? –

+0

@MarcusAdams Tôi hy vọng sẽ phân phối ứng dụng thông qua một trang web – Christoffer

Trả lời

0

Nếu bạn phân phối ứng dụng iOS (bên ngoài) bên ngoài App Store (có, điều này có thể theo nhiều cách khác nhau), thì bạn không thể sử dụng dịch vụ thông báo đẩy của Apple.

Bạn vẫn có thể phát hành ứng dụng iOS gốc bên ngoài cửa hàng ứng dụng.

Một cách, nếu ứng dụng của bạn là nguồn mở, bạn có thể phân phối ứng dụng của mình qua MacBuildServer. Một cách khác là thông qua phân phối Doanh nghiệp.

Hầu hết các thiết bị Android đích thực đều hỗ trợ side loading ứng dụng để chúng có thể tải xuống ứng dụng gốc của bạn từ trang web của bạn.

Nếu bạn muốn viết một ứng dụng web (chạy bên trong trình duyệt web của họ), thì bạn không thể sử dụng thông báo đẩy của Apple và có thể không có dịch vụ "thông báo" thay thế nào đủ.

Hầu hết các dịch vụ thông báo đẩy "nền tảng chéo" vẫn liên kết với dịch vụ APNS gốc dành cho iOS. Không chỉ thay thế cho thông báo đẩy của apple.

Các lựa chọn thay thế bao gồm việc bỏ phiếu một máy chủ (chỉ hoạt động khi ứng dụng của bạn đang ở nền trước) hoặc đơn giản là để kết nối TCP đang mở, chờ.

+0

Thông tin chi tiết tốt và có vẻ như không có cách nào để cố gắng đi qua cổng đánh giá gốc ... – Christoffer

0

Câu hỏi: bạn có muốn đẩy chỉ xảy ra khi người dùng có trình duyệt đang mở với ứng dụng web mở không?

Tôi đang đặt câu hỏi vì bạn nhấn mạnh vào thực tế là bạn phải làm một ứng dụng web chứ không phải ứng dụng gốc.

Nếu đúng như vậy, bạn có thể sử dụng một số thư viện đẩy javascript. Nhưng hãy lưu ý ngay cả khi đó là js, bạn sẽ có một kết nối ổ cắm bổ sung đang mở (ngoài việc mở ổ cắm gốc). Vì vậy, điều này sẽ tiêu thụ pin, đó có thể là lý do khiến mọi người ngừng sử dụng ứng dụng của bạn.

Nếu bạn muốn thông báo thời gian thực, bạn nên giải quyết cơ chế push mẹ đẻ trên mỗi nền tảng (có thể với PhoneGap hoặc titan)

+1

Có, thách thức là tôi muốn tìm cách đẩy thông báo khi ứng dụng không hoạt động. Đó là lý do tại sao tôi cho rằng tôi phải liên kết với một số thông báo gốc bên ngoài ứng dụng. Email là có thể nhưng không phải là thời gian thực. SMS là thời gian thực hơn nhưng tốn kém. IM có thể là một cách. Tôi giả định khác đã có cùng một thách thức và có thể đã tìm thấy một cách để "giải quyết" nó? – Christoffer

0

bạn đã xem xét cái gì đó như https://pushover.net/?

Vì tôi hiểu nó là một ứng dụng riêng biệt cho phép người dùng nhận thông báo từ bạn. Vì nó là một ứng dụng riêng biệt, nó sẽ giúp bạn có được các cổng đánh giá, nhưng nó có thể đòi hỏi nhiều nỗ lực hơn từ người dùng của bạn.

0

Theo hiểu biết của tôi, bạn có thể xây dựng một ứng dụng lai cho phép bạn truy cập cả chức năng gốc cũng như web. Để đạt được điều này, bạn có thể cân nhắc sử dụng Phonegap. Điều này cũng sẽ cho phép bạn sử dụng dịch vụ Thông báo đẩy.

Bạn có thể xem xét Chuyến bay thử nghiệm là phần mềm của bên thứ 3 để phân phối ứng dụng của bạn trên nền tảng Android và iOS. Chuyến bay thử nghiệm miễn phí và gần đây được Apple mua lại.

5

Có thể xây dựng một ứng dụng web ("ứng dụng web tiến bộ" khi họ gọi cho họ những ngày này) có thể gửi thông báo đẩy ngay cả sau khi trang đã bị đóng.

Những công việc này hôm nay trong Chrome dành cho Android (và các trình duyệt khác dường như đang triển khai hỗ trợ), nhưng không có hỗ trợ trên iOS.

Check-out this demo, và hướng dẫn này giải thích làm thế nào để làm điều đó: https://developers.google.com/web/fundamentals/engage-and-retain/push-notifications/

0

Nếu bạn xây dựng một ứng dụng bản địa (hoặc bạn sử dụng một wrapper bản địa như PhoneGap xung quanh một html/app javascript) bạn phải phân phối nó thông qua cửa hàng ứng dụng.

Nếu bạn truy cập trang web, bạn có thể gửi thông báo đẩy thực bằng cách sử dụng Push API (có dịch vụ như Pushpad giúp dễ dàng hơn). Hiện tại, trình duyệt di động duy nhất hỗ trợ API đẩy là Chrome trong Android (tuy nhiên nhiều khả năng sẽ sớm xuất hiện).

Các vấn đề liên quan