2009-04-08 32 views
5

Tôi có một ứng dụng android mà chơi nhạc từ một trang web, tuy nhiên để xác thực cho luồng dữ liệu, bạn cần phải gửi một cookie đầu tiên IE Android:MediaPlayer URL với Cookie

http://example.com/site/content?id=SOMEID = định dạng mp3 dòng

Nếu bạn truy cập url mà không có cookie, bạn sẽ gặp lỗi máy chủ 500. Nếu bạn có cookie, bạn sẽ nhận được luồng.

Đối với cuộc sống của tôi, tôi không thể tìm ra cách làm cho trình phát đa phương tiện phát một URL trong khi gửi cookie.

Tôi có thể phát bất kỳ url nào không yêu cầu cookie.

+0

Bạn đã bao giờ tìm ra cách giải quyết cho vấn đề này chưa, WedTM? – Eric

Trả lời

2

Theo như tôi có thể nói bạn không thể. Hầu hết mọi thứ mà MediaPlayer thực hiện đều được thực hiện bằng mã nguồn gốc, bao gồm cả việc mở bất kỳ kết nối nào, vì vậy không có cách nào để truy cập luồng mà nó đang sử dụng AFAICT.

1

Một cách giải quyết khác là tạo máy chủ web trong ứng dụng Android của bạn, yêu cầu xác thực và tải xuống MP3 của bạn và gọi phương thức SetDataSource MediaPlayer bằng địa chỉ máy chủ cục bộ của bạn (chẳng hạn như http://127.0.0.1:8000/mymp3.mp3). Bạn có thể phát lại xảy ra trong khi lớp máy chủ web của bạn vẫn đang tải xuống, lý tưởng là người dùng của bạn sẽ nhận thấy sự khác biệt.

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