2009-08-06 20 views
7

Ứng dụng đáng yêu của chúng tôi tải xuống mp3 từ máy chủ của chúng tôi vào tệp cục bộ trên điện thoại, sau đó phát từ tệp đó đã bị từ chối do sử dụng quá nhiều băng thông.Ứng dụng iPhone bị từ chối vì "chuyển quá nhiều dữ liệu"

Tôi hiểu việc từ chối (chúng tôi đang tải xuống thay vì phát trực tuyến) và không phân biệt quyết định của họ ... ưu tiên hàng đầu của chúng tôi là chất lượng trải nghiệm người dùng.

Tôi chỉ tự hỏi ... tôi phải làm gì bây giờ?

Không có quy tắc cứng và nhanh ... Apple chỉ nói, "Không được trong phán đoán hợp lý của Apple sử dụng quá mức hoặc thừa nhận dung lượng mạng hoặc băng thông".

Bất kỳ ai có dữ liệu về những gì Apple xem xét tỷ lệ truyền dữ liệu hợp lý?

Tôi có nên điền vào tệp đệm trong thời gian ngắn không? Nên phát tệp ở tốc độ không đổi (và làm cách nào để giới hạn tốc độ truyền từ trong ứng dụng?)

Bất kỳ và tất cả đề xuất đều được chào đón.

Cảm ơn

Trả lời

11

Tôi đã nói chuyện với bộ phận hỗ trợ của Apple Developer và chỉ FYI. Bạn chỉ được phép phát 1 MB mỗi phút trên mạng Cellular. Hỗ trợ đề xuất bạn nên thử nghiệm ứng dụng theo cách sau:

"Phương pháp đo cơ bản là tắt tất cả cập nhật nền (đặc biệt là tải xuống thư tự động của Mail và Cập nhật lịch), đặt lại thống kê chuyển trong" Cài đặt: Chung: Sử dụng : ", và sau đó khởi chạy ứng dụng của bạn. Hãy để nó chạy trong một khoảng thời gian cố định (năm phút là hợp lý), và sau đó thoát khỏi ứng dụng của bạn. Khi bạn đã hoàn thành bài kiểm tra, các con số được liệt kê trong" Dữ liệu Mạng Di động "trong" Cài đặt: Chung: Cách sử dụng: "là những gì bạn nên tập trung vào việc giảm.

Sử dụng những gì tôi vừa mô tả, tôi đề xuất 4,8 MB cứ 5 phút làm hướng dẫn bạn sử dụng để đảm bảo ứng dụng của bạn nằm trong yêu cầu băng thông của chúng tôi".

Hy vọng rằng sẽ giúp ít nhất một chút.

+0

Đây là câu trả lời hữu ích nhất được nêu ra ... Cảm ơn. Chúng tôi hiện đang đạt chính xác 4,8 mb mỗi 5 phút (trùng hợp). –

+0

Chúng tôi có thêm thông tin cập nhật về điều này không? – Jonny

+0

Còn điều gì bạn muốn biết? – postalservice14

0

Trên một lưu ý nghiêm trọng hơn, những gì là nó cố gắng để làm gì? Có rất nhiều thị trường dành cho iPhone bên ngoài nước Mỹ không có tỷ lệ tải xuống tốt cho điện thoại và cũng không phải là kích thước tải xuống tốt, vì vậy việc tải xuống ứng dụng không phải là một điều tốt.

Bạn có thể giảm tốc độ dữ liệu trên mp3 của mình hoặc một số dữ liệu như vậy không? Làm cho nó tùy chọn để làm việc tải xuống với một cảnh báo rằng nó sẽ sử dụng tải xuống của bạn?

+0

Tôi đồng ý rằng chúng ta nên chú ý nhiều hơn đến vấn đề băng thông ... nhưng thấy rằng youTube, Pandora và một loạt các ứng dụng phát trực tuyến khác được mua với nó, tôi không nghĩ chúng tôi sẽ bị từ chối vì nếu có. Đó là sự thật .. nếu mọi nhà phát triển áp đảo mạng ... sử dụng các dịch vụ khác như duyệt web sẽ bị ảnh hưởng. Đó là lý do tại sao tôi đang tìm kiếm một cách có trách nhiệm để làm điều này và vẫn cung cấp cho người dùng trải nghiệm tốt. –

6

Bạn có coi HTTP Live Streaming không? Nó được tích hợp vào OS 3.0.

Về cơ bản, bạn chia phương tiện thành các đoạn trích nhỏ (ví dụ 10 giây) và đặt nó trên máy chủ web chuẩn. Sau đó, bạn tạo các tệp văn bản 'meta-descriptor' văn ​​bản nhỏ ở định dạng EXTM3U chỉ ra vị trí của các bit. Điều thú vị là bạn có thể tạo nhiều phiên bản mỗi đoạn mã với các tốc độ bit khác nhau. Vì vậy, nếu băng thông của bạn tốt, trình phát iPhone sẽ tự động chọn tốc độ bit cao hơn nhưng khi nó thấp, nó sẽ tự động chuyển sang phiên bản bit thấp hơn của đoạn mã. Nó thực hiện điều này một cách nhanh chóng để thích ứng với các điều kiện thay đổi. Vì vậy, nếu bạn chia MP3 thành nhiều bit 10 giây, 3 bit khác nhau khi người dùng được kết nối thông qua WiFi, họ sẽ có được những thứ chất lượng cao nhưng nếu họ đang sử dụng 3G hoặc EDGE thì họ sẽ nhận được nội dung có chất lượng thấp hơn (và kích thước nhỏ hơn).

Nếu điều này vi phạm khái niệm truyền thông có thể tải xuống của bạn, thì có lẽ bạn có thể sử dụng cùng một mẹo và giữ nhiều tệp kích thước cho từng loại kết nối. Sau đó, nếu bạn đang sử dụng WiFi (hoặc quay vòng nhanh trên máy chủ nhịp tim đến máy chủ), hãy tải xuống tệp lớn so với kích thước trung bình hoặc nhỏ.

Here's a decent step-by-step về phân đoạn nội dung. Họ tập trung vào video nhưng nó cũng hoạt động với nội dung âm thanh.

+0

Đề nghị đầu tiên của bạn để phân đoạn các tập tin có vẻ như rất nhiều công việc nhưng có lẽ đó sẽ là cách chúng ta phải đi. Các tệp dài khoảng 30 phút để mỗi tệp có kích thước 180 tệp. Chúng tôi phát các tệp trong trình phát của riêng mình mà không cần người dùng rời khỏi ứng dụng .. liệu đó vẫn là tùy chọn với tính năng Phát trực tiếp HTTP HTTP 3.0? Nó sẽ dễ dàng hơn nhiều so với Apple đã cung cấp cho nhà phát triển một số điểm chuẩn. –

+0

Giảm chất lượng nội dung nghe như một ý tưởng tuyệt vời khi bạn di chuyển từ wifi sang 3g sang gprs ... – Spence

+0

Các công cụ được liệt kê trong bài viết đó tôi liên kết tự động thực hiện phân đoạn và tạo danh sách phát cho bạn. Cho đến nay tôi đã chỉ chơi với các tập tin video nhưng âm thanh là nghĩa vụ phải làm việc quá. Trình khách phát trực tuyến thực chất là trình phát video có thể nhúng. Khi nói đến nội dung video, nó có chế độ toàn màn hình nhưng vẫn được nhúng (tức là bạn không thoát khỏi ứng dụng của mình trong khi phát lại). Vì đó là khung chính thức bị xử phạt nên bạn có thể có may mắn hơn khi tải ứng dụng của mình. – Ramin

0

YOu không thể tải xuống mp3 trừ khi bạn đang sử dụng mạng không dây và thông báo cho họ biết điều đó. Nếu bạn mp3 là quá quan trọng, sau đó chỉ cần nói với họ nó chỉ hoạt động trên không dây, hoặc bao gồm một vài mp3 trên thiết bị. Nhưng 30 phút của mp3 là vô lý, đó là về những gì, 30meg .... suy nghĩ về nó, 30 meg chỉ là quá nhiều.

+0

Các tệp, là lõi của ứng dụng, phạm vi có kích thước từ 5Mb đến 16,7Mb. Đó không phải là vô lý. –

1

Tôi khuyên bạn nên điều chỉnh băng thông trên mạng/yêu cầu http khi được kết nối với mạng di động và không có ga trên wifi.

Kết hợp sử dụng Khả năng hiển thị để phát hiện trạng thái mạng và triển khai yêu cầu http của bạn bằng cách sử dụng CFNetwork với giấc ngủ cho đến giây tiếp theo bất cứ khi nào bạn tải xuống nhiều nhất được phép mỗi giây.

Bạn nên kiểm tra dự án này, hoặc là để sử dụng, hoặc chỉ để xem một ví dụ về làm thế nào để viết mã tốt này:

http://allseeing-i.com/ASIHTTPRequest

Lớp ASIHTTPRequest thực hiện điều này, sử dụng phiên bản cũ hoặc 2.0 Khả năng hiển thị và cũng cung cấp bộ điều khiển cấp lớp, vì vậy ngay cả khi bạn có nhiều lượt tải xuống đồng thời và tải lên, miễn là tất cả chúng đều đi qua ASIHTTPRequest, chúng sẽ được kết hợp đúng cách và điều chỉnh đúng cách.

Một chút thêm về cách sử dụng này ở đây: http://allseeing-i.com/ASIHTTPRequest/How-to-use#bandwidth_throttling

Rất nhiều thứ tốt trong việc này (và không có, tôi không phải là tác giả của bất kỳ của nó).

+0

Tôi đã kết thúc việc đó. Nhưng tôi đã tăng tốc độ truyền dữ liệu trên các cập nhật tiếp theo mà không bị phạt (cho đến nay) –

+0

Rất thú vị. Chúng tôi đã thông qua việc xem xét với ga tăng thêm là tốt - Tôi sẽ phải xem về leo lên giới hạn ga ... –

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