2013-05-16 51 views
6

Tôi có một giao diện được định nghĩa trong aidl nhưng tôi không thể mở rộng hoặc tìm thấy nó theo bất kỳ cách nào. Ide chỉ cho tôi biết: Không thể giải quyết biểu tượng 'KeyEventListener' Bất kỳ ý tưởng nào về cách sửa lỗi này?android-studio không thể tìm thấy giao diện trợ giúp để sử dụng trong lớp

infos khác:

  • KeyEventListener là tên của giao diện quy định tại KeyEventListener.aidl
  • KeyEventListenerImpl là lớp mà mở rộng Stub giao diện
  • KeyEventListener chỉ chứa một phương thức có tên 'khoảng trống DoIT (); ' và được định dạng tốt;

Tôi biết android-studio là một số thứ như tiền bối nhưng rất thích và rất vui nếu một số người có thể tạm dừng tôi về điều này!

enter image description here

Trả lời

11

Bạn đang có lẽ giảm giá tốt nhất có một cái nhìn tại The Gradle Plugin User Guide dành cho Android.

Gradle, theo mặc định, yêu cầu cấu trúc thư mục cụ thể. Nếu bạn muốn sử dụng Gradle với cấu trúc thư mục mà hầu hết các nhà phát triển Android quen thuộc, bạn sẽ cần phải đặt thông tin sau (từ liên kết được đề cập ở trên) bên trong khối "android".

sourceSets { 
    main { 
     manifest.srcFile 'AndroidManifest.xml' 
     java.srcDirs = ['src'] 
     resources.srcDirs = ['src'] 
     aidl.srcDirs = ['src'] 
     renderscript.srcDirs = ['src'] 
     res.srcDirs = ['res'] 
     assets.srcDirs = ['assets'] 
    } 
} 

Sau khi bạn đã thực hiện việc này, hãy làm sạch và xây dựng lại để an toàn.

Cá nhân, tôi vừa điều chỉnh các dự án của mình để phù hợp với quy ước mới.

+3

Điều đó là đúng. Nếu bạn đang sử dụng cấu trúc mới, hãy nhớ rằng các tệp trợ giúp bây giờ nằm ​​trong src/main/aidl và không phải là src/main/java. –

+0

google thực sự nên thêm một hộp thông tin về điều này nếu nó phát hiện aidl ở nơi khác –

9

Trong trường hợp của tôi CleanRebuild dự án đã giải quyết được sự cố của tôi.

0

Đã tạo thư viện trợ giúp theo src/main.

Sau đó, tạo cấu trúc gói tập tin aidl mới và chuyển tệp aidl vào đó.

Xây dựng lại và nó đã được thực hiện.

I followed this post

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