2013-05-21 3 views
1

단일 소스 라이브러리로 Android 앱을 하나 개발하고 있습니다. 무료 버전과 유료 버전을 모두 제출하고 싶습니다. 무료 버전의 경우 일부 기능을 비활성화하고 유료 기능에 더 많은 기능을 제공 할 계획이었습니다. 안드로이드 애플 리케이션을 찾을 수있는 방법이 있습니까 무료 또는 자바 코드로 지불?Android 앱 - Lite 버전 또는 유료 버전

EDIT 1 : Windows Phone에서 "App.xaml.cs"파일에는 무료 또는 유료 버전의 Windows Phone 응용 프로그램을 식별하는 다음과 같은 방법이 있습니다.

private void Application_Launching(object sender, LaunchingEventArgs e) 
{ 
    var license = new Microsoft.Phone.Marketplace.LicenseInformation(); 
    IsTrial = license.IsTrial(); 
} 

여기서 IsTrail은 true 또는 false를 반환하는 속성입니다. 안드로이드가 무료 또는 유료 버전을 감지 할 수있는 방법이 있습니까?

답변

0

현재이 기능을 지원하지 않습니다. 사용자가 라이센스 서비스 (LVL)를 사용하여 유료 앱을 구매했는지 여부는 확인할 수 있지만 유료 앱에서는 사용할 수 없습니다.

1

Google Play Services은 실행중인 앱과 관련하여 Google Play 메타 데이터에 액세스하기위한 API를 제공하지 않습니다. Application Licensing 앞으로 나아갈 수는 있지만 사용자 Sandy는 유료 앱에서 사용할 수 없다고 언급했습니다 (이상한 소리).

그래도 앞으로 또 다른 방법 제안 : 당신이 두 개의 서로 다른 버전을 업로드 할 수있는 무료 버전에서 유료 버전으로 업그레이드하는 응용 프로그램 내 구입 응용 프로그램의 단일 버전을 제공하지 않는 한

  • 을 (두 앱에서 패키지 이름이 같을 수 없음). 이 사실을 피하는 방법은 없습니다.

  • 앱의 두 가지 버전을 빌드해야하므로 컴파일 타임에 컴파일 된 코드를 사전 처리하고 무료 및 유료 버전간에 다른 코드 부분을 바꿀 수 있습니다. 신중하게 설계된 코드를 사용하면 전혀 문제가되지 않습니다. Library projects이 이에 적합해야합니다.

  • 또 다른 옵션은 구성/실행 매개 변수의 수단을 통해 코드의 어떤 부분을 활성화 할지를 제어하는 ​​컴파일 타임에 두 개의 다른 데이터/설정 파일 세트를 제공하는 것입니다.

앱에 대한 추가 정보를 제공 할 수 있다면 좋은 해결책을 제안하는 것이 더 쉽습니다. 유료 앱의 레벨이 더 높은 게임인가요? 무료 버전에서 일부 기능을 사용할 수없는 앱입니까? 무료 버전에서 하루 동안 특정 사용 횟수로 제한되는 앱입니까?

업데이트 : 유료 앱에서 댓글을 서버에 게시해야하는 동안 무료 앱에서 댓글을 사용 중지하겠다고 언급했습니다.

  1. 코드 두 library projects, 하나를 만들기 : 나는 가장 좋은 방법은 무료 버전을 구축 할 때 유료 버전을 구축 할 때 두 라이브러리 프로젝트에 유료 및 무료 로직을 ​​분리하여 하나 개의 프로젝트를 사용하는 것입니다 생각 무료 앱과 유료 앱을위한 것입니다. 두 프로젝트 모두에서 CommentPoster 또는 이와 비슷한 클래스가 있어야합니다. 두 클래스 모두 사용자가 주석을 게시 할 때 호출 될 메소드를 정의하는 기본 프로젝트의 인터페이스를 구현하고 ICommentPoster라고 부르며 postComment (String comment) 메소드를 갖도록합니다.

  2. 유료 버전에 CommentPoster 클래스의 postComment() 메소드는 무료 버전에 CommentPoster 클래스의 postComment() 메소드는 대화, 토스트를 만들어 보자 또는 서버

  3. 에 의견을 보내 보자 이 기능을 사용할 수 없다는 것을 사용자에게 알리는 다른 방법. 당신은 당신이 정말로 두 라이브러리 프로젝트의 아이디어를 좋아하고 싶지 않은 경우 사용자가 코멘트

사용할 수 없습니다 사전에 알려하려는 경우 선택적으로 ICommentPoster에서 isAvailable()라는 다른 방법을 가질 수있다 하나의 프로젝트에 모든 코드를 유지하면 몇 가지 전처리 작업을 수행 할 수 있고 두 개의 다른 설정 파일 중 하나를 포함 할 수 있으며 앱이 설정 파일을 읽음으로써 댓글을 사용할 수 있는지 여부를 확인할 수 있습니다. 앱의 모든 코드가 필요하고 유료 버전의 이점을 얻으려는 설정 파일을 수정해야하기 때문에 쉽게 해킹 할 수 있다는 단점이 있습니다 (아마 추측 된 루팅 된 장치에 대한 위험이 가장 높을 것입니다)

+0

예를 들어, pdf 변환기 단어, 무료 버전에서는 저장 버튼이 비활성화되고 유료 버전에서는 활성화되거나 무료 버전에서는 "유료 버전 필요"메시지가 표시됩니다. – Karthick

+0

저는 app과 같은 의견과 의견을 보내는 앱을 만들고 있습니다. 무료 버전의 경우 댓글이 게시되지 않고 유료로 게시되어야합니다. – Karthick

+0

두 버전간에 다른 코드에 대한 라이브러리 프로젝트 사용 제안으로 업데이트되었습니다. – britzl