Tôi đang theo dõi Google Drive Quickstart on Android instructions và làm cho nó hoạt động trong Eclipse/Kepler. (Juno chỉ đơn giản là tinh ranh.) Tuy nhiên, tôi quen thuộc hơn với IntelliJ, vì vậy tôi đang cố gắng tìm ra cách cài đặt các API này theo cách tương ứng.Mã mẫu Google Play, API Drive trong IntelliJ
I nghĩ Tôi đang bị vấp vào phần API Drive. Plugin Eclipse cài đặt Drive theo một số cách hoặc địa điểm đặc biệt. Tôi đã thêm Google-api-services-drive-v2-rev63-1.14.1-beta.jar làm thư viện, giống như các thư viện khác (Google-play-services và api_java_client). Nhưng khi tôi chạy ứng dụng, nó trở lại với
java.lang.NoClassDefFoundError: com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential
Và tôi cũng đã nhận được NoClassDefFoundError phải làm với Drive $ Builder.
Trong IntelliJ phạm vi .jar được đặt thành "Biên dịch" ngoại trừ các thư viện api_java_client được đặt thành "Đã cung cấp". Không ai trong số họ có "xuất khẩu" kiểm tra.
Chỉnh sửa: thêm mô-đun & phụ thuộc. Bây giờ tôi có một lỗi khác nhau:
04-07 00:39:59.766: ERROR/AndroidRuntime(10697): FATAL EXCEPTION: main
java.lang.NoClassDefFoundError:
com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential
at com.fallinghawks.weight4.App.onCreate(App.java:15)
App.java:15 là
credential = GoogleAccountCredential.usingOAuth2(this, DriveScopes.DRIVE);
tôi có thể tìm thấy những lớp nó yêu cầu ....
Chỉnh sửa 2, sau khi thêm thư viện theo hướng dẫn của CrazyCoder: Nó biên dịch, nó chạy, nhưng tôi nhận được lỗi sau. Tôi chắc chắn tôi đã bỏ lỡ làm điều gì đó hoàn toàn đúng, tôi sẽ thử nó một lần nữa trong một phút nhưng trong khi chờ đợi các lỗi là:
04-10 18:02:35.120: ERROR/AndroidRuntime(740): FATAL EXCEPTION: main
java.lang.ExceptionInInitializerError
at com.google.api.services.drive.Drive$Builder.build(Drive.java:7301)
at com.example.DriveQuickstart.MyActivity.getDriveService(MyActivity.java:110)
at com.example.DriveQuickstart.MyActivity.onActivityResult(MyActivity.java:49)
at android.app.Activity.dispatchActivityResult(Activity.java:5293)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3315)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3362)
at android.app.ActivityThread.access$1100(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1282)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NoClassDefFoundError: com.google.common.base.Preconditions
at com.google.api.services.drive.Drive.<clinit>(Drive.java:63)
(Hy vọng chỉnh sửa cuối cùng): Vâng, tôi đã bỏ lỡ điều gì đó và con thú đang làm việc! Cảm ơn bạn rất nhiều!!
Bây giờ tôi có thể sử dụng IntelliJ một lần nữa để làm việc trên dự án "thực" của tôi ... sooooo tốt hơn nhiều :)
Bạn phải nhập 'ANDROID_SDK \ extras \ google \ google_play_services \ libproject \ google-play-services_lib' làm mô-đun mới trong IDEA, sau đó đặt mô-đun chính của bạn thành [phụ thuộc vào nó] (http: //www.jetbrains .com/idea/webhelp/configuring-module-dependencies-and-libraries.html). ** Xuất ** hộp kiểm phải được kích hoạt cho các thư viện lọ bên trong mô-đun thư viện này. – CrazyCoder
Cảm ơn bạn đã trả lời @CrazyCoder. Bây giờ tôi có một lỗi khác mà tôi sẽ thêm vào OP. – Andrea
Dường như một số lọ từ https://code.google.com/p/google-api-java-client/ bị thiếu trong các phụ thuộc của mô-đun. – CrazyCoder