2012-10-24 4 views
0

나는 내 도서관 프로젝트에 무료로 프로 버전을 사용하고 있습니다. 프로 버전과 무료 버전에는 코드가 없습니다. 그냥 대체 리소스. 이제 프로에 몇 가지 활동을 포함시키고 싶습니다. 그래서 내 도서관 코드에서이 새로운 프로 활동을 어떻게 불러내나요? 컨트롤은 라이브러리 코드에서 시작하므로 프로와 같은 리스너를 설정할 수있는 기회가 없습니다. 이러한 새 액티비티의 절대 클래스 이름을 라이브러리 프로젝트의 인 텐트에 문자열로 전달하는 것이 좋습니다. 이것은 아마도 멍청한 질문 이었지만 나는 많은 검색을했다. 작은 힌트가 필요해.도서관 프로젝트

+0

컨트롤이 시작되면 "라이브러리"프로젝트처럼 들리지 않습니다. –

답변

0

확인. 필자는 위젯의 구성 활동을 사용하여이를 해결할 수있었습니다. 메인 프로젝트의 위젯 메타 데이터에 대한 매니페스트에서 오버라이드 된 XML 파일을 지정했습니다. 프로 프로젝트에있는이 오버라이드 된 xml은 주 프로젝트에만있는 액티비티에 대한 포인터 (android : configure)를가집니다.

이렇게하면 라이센스를 구현할 수있었습니다. 프로 버전에서는 구성 활동이 라이센스를 관리합니다. 무료 버전에는 구성 활동이 없습니다.

0

설정이 사용자의 의도와 반대라고 생각합니다. 도서관 프로젝트에는 공통의 공유 코드가 있어야합니다. 앱의 프로/무료 버전이있는 경우, 당신은 아마 3 개 프로젝트가 있어야합니다

  1. ProVersion 프로젝트
  2. FreeVersion 프로젝트
  3. 공유 라이브러리 프로젝트

대체 자원이 아니기 때문에 공유하면 각자 자신의 프로젝트 (프로/무료)에 참여하게됩니다. 공유 된 모든 코드는 라이브러리 프로젝트에 포함됩니다. 이 설정을 사용하면 공유 라이브러리 프로젝트에있는 모든 코드를 기본 프로젝트의 일부로 사용할 수 있습니다.

"포함"하는 것으로 생각할 수 있습니다. 기본적으로 라이브러리 프로젝트입니다.

+0

내가 말한대로 세 가지 프로젝트가 있습니다. 내 도서관 코드도 공유 코드 만 포함하고 있습니다. 그러나 thats 모든 코드가 있습니다. 그것의 위젯은 실제로 라이브러리에서 관련 서비스를 사용합니다. 위젯과 서비스는 일부 리소스 차이를 제외하고는 무료이며 무료로 제공되는 라이브러리에 있습니다. 이제 라이브러리 서비스에서 프로 버전의 새로운 구성 요소를 호출하려고합니다. 문제는 라이브러리 코드에서 컨트롤이 시작되는 위젯에 있습니다. 답장을 보내 주셔서 감사합니다. –