2015-04-15 2 views
4

У меня есть файл AIDL, который реализован в пакете в ProjectA, и я пытаюсь импортировать класс Parcelable (Foo) из другого пакета в ProjectB. Ниже способ, как я реализовал файл MyService.AIDL:Как импортировать класс другого пакета из другого проекта в файл AIDL?

package com.packageA.projectA 
import com.packageB.projectB.Foo 

interface MyService{ 

void getSomething(Foo foo); 
} 

Однако, я получаю эту ошибку компиляции «не удалось найти импорт для класса com.example.projectB.Foo». Если я скопировал packageB в packageA, тогда я не получу ошибки компиляции.

Есть ли способ импортировать посыльный класс из пакета под другим проектом? Я знаю, что есть несколько вопросов о stackoverflow и других местах (например, группе google) об импорте parcelable в рамках одного и того же проекта, но ни один из разных проектов. Спасибо за ваше время.

ответ

0

Вы хотите сказать, что вы определили класс для класса parcelable, и вы не можете использовать этот класс в helpl? Попробуйте следующее решение. у вас есть ваш MyService.AIDL в вашем пути src/xxx. Теперь создайте Foo.aidl (имя должно быть одинаковым) по тому же пути и определите Foo.aidl, как показано ниже.

package com.packageB.projectB 
parcelable Foo 

Теперь удалить оператор импорта из MyService.AIDL и повторно введите его (ее для освежающего, иначе он будет показывать то же ошибку) теперь должна исчезнуть, что ошибка импорта.

Смежные вопросы