2010-05-17 31 views
8

Tôi đã cài đặt một vài ứng dụng miễn phí trên điện thoại Android và sau đó "nâng cấp" lên phiên bản đầy đủ trả tiền. Bản năng đầu tiên của tôi để làm tương tự sẽ là tạo hai ứng dụng có cùng tên gói để cài đặt một ứng dụng ghi đè lên ứng dụng khác, nhưng các ứng dụng trong Market phải là duy nhất theo tên gói.Tùy chọn và phương pháp hay nhất để phát hành phiên bản miễn phí và trả phí của cùng một ứng dụng cho Android Market

Một số mẫu và phương pháp hay nhất để chia sẻ mã và tài nguyên cho các phiên bản miễn phí và trả phí của cùng một ứng dụng và bất kỳ quy ước đặt tên hoặc cấu trúc dự án nào cũng phù hợp với kịch bản này?

+0

Hiện đã có một câu trả lời gần đây mà có vẻ đơn giản hơn nhiều để thực hiện http://stackoverflow.com/questions/3062946/how-can-i-use-the-paid-version-of-my-app-as- a-key-to-the-free-phiên bản/3069973 # 3069973 – rds

Trả lời

-2

Mỗi ứng dụng phải có tên gói khác, nếu không thì ứng dụng đó được coi là "nâng cấp". Thị trường rất đen và trắng về quy tắc này (tôi phát hiện ra con đường khó khăn).

Nói cho bản thân mình, tôi muốn thấy một ứng dụng trên thị trường dưới dạng miễn phí, luôn luôn có sẵn và luôn miễn phí. Nó có thể thiếu một số tính năng được trình bày trong phiên bản trả tiền của ứng dụng và tôi có thể sẵn sàng tải xuống ứng dụng trả phí, khi tôi tự làm quen với ứng dụng miễn phí.

6

Cho đến khi Google ra mắt với sự hỗ trợ cho các ứng dụng được cấp phép, đây là những gì chúng tôi đã làm cho ứng dụng MixZing của chúng tôi (lưu ý rằng điều này giả định một máy chủ để thực thi giấy phép, nhưng nó không phải là một phần cần thiết của quá trình này nếu bạn sẵn sàng mất số tiền doanh thu đáng kể cho vi phạm bản quyền):

  1. Tạo ứng dụng "Nâng cấp" mà mọi người mua chỉ để nhận giấy phép nâng cấp. Nó không có chức năng, và chỉ khởi chạy hoạt động chính của ứng dụng miễn phí của bạn (tùy chọn với phụ thêm cho biết rằng nó đang được khởi chạy từ ứng dụng nâng cấp).

  2. Yêu cầu ứng dụng miễn phí nhắc người dùng cho khóa cấp phép nâng cấp của họ khi ứng dụng nâng cấp đã được cài đặt. Khóa cấp phép là số đơn đặt hàng Google Checkout.

  3. Yêu cầu máy chủ của bạn xác minh giấy phép khi người dùng nhập vào. Bạn có thể sử dụng API Checkout để thực hiện việc này.

Một số lưu ý và hãy cẩn thận:

  • Do chính sách hủy 24 giờ của thị trường bạn phải được chuẩn bị để chấp nhận giấy phép khi họ lần đầu tiên nhập nó (giả sử tất nhiên đó là một trật tự hợp lệ số tại thời điểm đó) và sau đó đặt lại người dùng sang phiên bản miễn phí nếu họ hủy.

  • Bạn cần theo dõi giấy phép và đảm bảo mọi người không chia sẻ chúng.

  • Tôi thừa nhận rằng việc theo dõi tất cả điều này trên máy khách và máy chủ, nhận được quyền máy trạng thái, v.v. hoạt động hiệu quả hơn chúng ta tưởng tượng ban đầu.

  • Chúng tôi cung cấp cho người dùng thời gian gia hạn ba ngày để nhập khóa cấp phép của họ, trong thời gian họ sử dụng các tính năng cao cấp.

  • Vì chúng tôi gắn giấy phép vào ID thiết bị, có một chút hỗ trợ liên quan đến việc chuyển giấy phép khi mọi người thay thế điện thoại của họ, flash ROM thay đổi ID thiết bị, v.v. Tất nhiên bạn không phải tạo giấy phép cho mỗi thiết bị và có tùy chọn tự phục vụ để chuyển giấy phép sẽ tiết kiệm rất nhiều công sức khi chúng tôi hoàn thành.

Tất cả trong tất cả, sẽ rất tuyệt nếu Google hỗ trợ ứng dụng được cấp phép và lưu người dùng và người dùng khỏi mọi rắc rối này!

+0

Cách tiếp cận thú vị và MUCH đánh giá cao tất cả các chi tiết. Tôi sẽ duyệt qua API để xem những gì có sẵn trong việc phát hiện những gói nào được cài đặt và bất kỳ "đá phản chiếu hệ thống" nào khác có sẵn, vì tôi chưa làm việc với bất kỳ điều nào. Tôi sẽ nói rằng hai trò chơi tôi đã "nâng cấp" đã làm như vậy seemlessly, vì vậy tôi tưởng tượng họ đang làm một cái gì đó giống như kiểm tra các phiên bản cao cấp, bắn ra một ý định cho nó, và sau đó gọi kết thúc vào bản thân (một thực sự bị treo trên tiếp tục, do đó, loại cho nó đi mà một cái gì đó năng động/hacky đang xảy ra). Thx lần nữa. – Rich

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