2013-04-03 62 views
6

Tôi đang tìm một giải pháp sử dụng API Android để chuyển tệp văn bản từ thiết bị hỗ trợ Android sang máy tính qua cáp USB. Tôi đã tìm thấy USB host nhưng tôi không thể sử dụng vì máy tính không thể hoạt động như một thiết bị cho máy chủ Android.truyền tệp từ android sang máy tính qua usb theo lập trình

Bạn có bất kỳ đề xuất nào về cách tôi có thể đạt được điều này không?

+1

Bạn có muốn thực hiện điều này theo chương trình không? Hay bạn chỉ cần cắm thiết bị và kéo và thả tệp? – FoxMulder900

+0

Tôi muốn làm điều đó theo chương trình, như tôi đã đề cập trong câu hỏi "sử dụng API Android". – niculare

+1

Tôi thấy, tôi không chắc chắn nếu điều này là có thể mà không có một ứng dụng trên máy khách, nếu không nó có thể sẽ là một nguy cơ bảo mật lớn. – FoxMulder900

Trả lời

3

Tôi đã giải quyết vấn đề này bằng cách sử dụng adb status-window để liên tục kiểm tra tình trạng thiết bị, và khi một thiết bị mới được kết nối, các tập tin cần được chuyển giao cho các máy tính sử dụng adb pull lệnh.

Để đạt được giải pháp di động (tức là chạy độc lập với nền tảng Android), tôi chỉ sao chép tệp 'adb.exe' và 'AdbWinApi.dll' vào ứng dụng của tôi và sử dụng adb từ đó.

+0

Sau khi sao chép tệp 'adb.exe' và' AdbWinApi.dll', tôi nên làm gì? chạy 'Runtime.getRuntime() này.exec ("adb -s pull /sdcard/juned.jpg/root/juned/android_usb /"); 'sẽ ổn, hoặc tôi cần làm gì khác? – juned

0

Bạn có thể viết một ứng dụng sẽ sử dụng http để liên hệ với máy của bạn và gửi dữ liệu (POST) đến điểm cuối đã biết.

Hãy nhớ rằng ứng dụng sẽ chỉ có quyền truy cập vào dữ liệu thuộc ứng dụng. Bạn sẽ không thể truy cập tệp tùy ý từ hệ thống tệp

+1

Vấn đề là tôi không thể dựa vào kết nối mạng không dây. Điều duy nhất tôi có thể dựa vào là cáp USB. – niculare

+2

Tương tự ở đây ... Tôi cần kết nối với một DB trên PC Windows thông qua USB. – Zonata

2

Có sự cố tương tự khi phần mềm được cài đặt trong máy tính cần thiết để có thể truy cập tệp bên trong điện thoại Android thông qua USB. Sau khi nghiên cứu dài ở đây là những gì làm việc cho tôi (không chắc chắn nếu đây là giải pháp tốt nhất nhưng nó đã làm việc). Windows có Windows Portable Device (WPD) API có thể được sử dụng để liệt kê các nội dung của một thiết bị thông qua USB (và sao chép các tập tin giữa máy khách và thiết bị).

Có rất ít hiện thực trong java http://code.google.com/p/jmtp/ (hoạt động tốt nhưng doesnt chức năng hỗ trợ sao chép từ thiết bị đến máy tính dù có một số hỗ trợ có sẵn để làm điều này với mã nguồn) nhau là jusbpmp (có sẵn trong kho google) (nếu ai đó tìm thấy một triển khai tài liệu và duy trì tốt để chia sẻ)

nhưng vì jmtp không làm việc cho tôi (sao chép mã nguồn chức năng (cho 64bit OS) không thành công), viết chương trình C# từ đầu để sao chép tệp từ thiết bị sang PC. đây là một hướng dẫn tốt đẹp http://cgeers.com/2011/08/13/wpd-transferring-content/

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