2011-07-01 7 views
6

Tôi hiện đang viết một phần của ứng dụng Android để tải video lên YouTube bằng API dữ liệu của Google. Tôi có phiên bản API mới nhất từ ​​Google Code và về cơ bản tôi đã sao chép ví dụ từ số Developer's Guide của họ trong thời gian này.Không thể tìm thấy lỗi lớp khi cố gắng tải video lên YouTube bằng cách sử dụng API gdata

Mọi thứ biên dịch không có cảnh báo hoặc lỗi và ứng dụng chạy tốt. Nhưng khi tôi gọi service.insert (...) tôi nhận được dấu vết ngăn xếp sau đây:

ERROR/dalvikvm(19489): Could not find class 'com.google.gdata.data.media.MediaBodyPart$MediaSourceDataHandler', referenced from method com.google.gdata.data.media.MediaBodyPart.initMediaDataHandler 
ERROR/dalvikvm(19489): Could not find class 'javax.activation.DataHandler', referenced from method com.google.gdata.data.media.MediaBodyPart.initMediaDataHandler 
ERROR/dalvikvm(19489): Could not find class 'javax.mail.internet.MimeBodyPart$MimePartDataHandler', referenced from method javax.mail.internet.MimeBodyPart.writeTo 
ERROR/dalvikvm(19489): Could not find class 'javax.activation.DataHandler', referenced from method javax.mail.internet.MimeBodyPart.attachFile 
ERROR/dalvikvm(19489): Could not find class 'javax.mail.internet.MimeBodyPart$MimePartDataHandler', referenced from method javax.mail.internet.MimeBodyPart.getDataHandler 
ERROR/dalvikvm(19489): Could not find class 'javax.activation.DataHandler', referenced from method javax.mail.internet.MimeBodyPart.setContent 
ERROR/dalvikvm(19489): Could not find class 'javax.activation.DataHandler', referenced from method javax.mail.internet.MimeBodyPart.setContent 
ERROR/dalvikvm(19489): Could not find class 'javax.activation.DataHandler', referenced from method javax.mail.internet.MimeBodyPart.updateHeaders 

with a NoClassDefFoundError.

Tôi có tất cả các phụ thuộc cho API gdata được liên kết với dự án của tôi trong Eclipse (hai được bao gồm trong thư mục deps của API và javamail, activation và servlet-api) và tôi đã thử thêm tất cả các jar các tệp cho classpath trong Eclipse. Tôi đã xem xét thông qua các lọ có liên quan và tất cả các lớp mà nó tuyên bố nó không thể tìm thấy chắc chắn là ở đó.

Nếu ai đó có thể giúp bằng bất kỳ cách nào - bất kỳ ý tưởng nào ở giai đoạn này sẽ được đánh giá cao.

Cảm ơn

+0

bạn đã tải lên video bằng gdata chưa? – MAC

+0

@ gtumca-MAC có, trên Android. Tôi đã sử dụng hướng dẫn mà tôi đã đăng trong câu hỏi gốc để giúp tôi bắt đầu. –

Trả lời

9

Hóa ra là các gói JavaMail/Activation thông thường hiện không hoạt động trên Android. Giải pháp là sử dụng JavaMail for Android, hoạt động hoàn hảo.

+0

Nó giúp, cảm ơn rất nhiều! –

+0

Liên kết chính thức: https://java.net/projects/javamail/pages/Android – mhsmith