2010-01-06 17 views
6

Tôi đã được yêu cầu một số bản xem xét của một ứng dụng Android mà tôi đã viết, điều này thật tuyệt vời, nhưng tôi không sẵn sàng cung cấp ứng dụng đầy đủ cho bất kỳ ai. Tôi muốn thực hiện một phiên bản giới hạn thời gian (hoạt động trong khoảng hai tuần, sau đó từ bỏ con ma).Làm cách nào bạn có thể tạo bản sao đánh giá của ứng dụng Android?

Cách dễ nhất để thực hiện việc này là gì? Tôi chưa thử nghiệm bản thân mình, nhưng tôi nghĩ rằng trong lý thuyết nếu một người xây dựng ứng dụng bằng cách sử dụng một kho khóa hết hạn trong hai tuần có thể làm việc. Điều đó có đúng không, hoặc tôi có phải đặt một dòng mã trong ứng dụng sẽ tắt nó nếu bạn cố gắng khởi động nó sau một ngày đã định không?

Trả lời

4

Kho lưu trữ khóa không được chọn sau khi ứng dụng được cài đặt; chỉ vào thời gian cài đặt là ngày được xác minh.

Bạn sẽ phải đặt mã giới hạn thời gian của riêng mình, tôi hình dung. Mặc dù nếu bạn muốn thực sự hoang tưởng, bạn có thể xem xét rằng người dùng có thể thay đổi đồng hồ của thiết bị.

Ngoài ra, bạn có thể thực hiện kiểm tra trực tuyến (chống lại thời gian trên máy chủ của bạn) hoặc tạo từng APK mà bạn đưa ra có mã thông báo cá nhân được nhúng được xác thực đối với máy chủ của bạn.

+0

Ah, rất tốt để biết về kiểm tra kho khóa. –

+0

Câu chuyện thú vị, tôi đã cố gắng để kiểm tra các giải pháp dễ dàng (một ngày cutoff trong mã) và tôi thực sự không thể thay đổi thời gian hệ thống. Chắc chắn, Android sẽ cho phép tôi mở hộp thoại để đặt ngày theo cách thủ công, nhưng một số Người nhận vẫn tiếp tục chọn và thay đổi lại! Có lẽ nó không phải là dễ dàng như là một trong những suy nghĩ đơn giản là "thay đổi thời gian" để giữ cho một ứng dụng làm việc - hoặc có lẽ ADP1 của tôi là một chút sôi nổi. : P –

1

cách dễ nhất là mã hóa ngày kết thúc và không còn chạy sau ngày đó nữa. nó có thể được phá vỡ nếu người dùng thay đổi thời gian hệ thống của họ, nhưng đó là một loại rắc rối để đi qua.

nếu không, bạn có thể yêu cầu ứng dụng của bạn kiểm tra định kỳ giấy phép bằng cách kết nối với máy chủ của bạn qua http, nhưng yêu cầu nhiều công việc hơn.

1

Điều này nghe có vẻ là một ý tưởng tuyệt vời. Bạn có thể muốn đặt điện thoại ứng dụng ở nhà và xác minh với một máy chủ mà một khoảng thời gian nhất định đã trôi qua. Người dùng luôn có thể xóa tệp tùy chọn của bạn trên điện thoại hoặc gỡ cài đặt và cài đặt lại ứng dụng để tránh các giới hạn trên điện thoại.

Tôi tin rằng phương pháp tiếp cận kho khóa cũng có thể hoạt động, nhưng tôi không chắc chắn chính xác cách chúng hoạt động trong Android.

Hãy làm cho dự án này trở thành nguồn mở khi bạn hoàn thành - tôi nghĩ điều này sẽ hữu ích cho nhiều người!

3

Tôi có đề xuất đơn giản nhất, nếu người đánh giá mua ứng dụng và bạn hoàn trả khoản thanh toán thì sao?

+1

Đây là một ý tưởng tốt cho việc sử dụng thường xuyên nhưng tôi sẽ không sử dụng nó quá nhiều như quá nhiều tiền hoàn lại thẻ tín dụng có thể khiến tài khoản của bạn bị gắn cờ. –

0

Theo Google: "Nếu bạn định xuất bản (các) ứng dụng của mình trên Android Market, khóa bạn sử dụng để ký (các) ứng dụng phải có thời hạn hiệu lực kết thúc sau ngày 22 tháng 10 năm 2033. Máy chủ Market thực thi điều này yêu cầu để đảm bảo rằng người dùng có thể nâng cấp liền mạch các ứng dụng Market khi có phiên bản mới "

Điều chúng tôi đã làm với mục nhập thách thức nhà phát triển II là khi chúng tôi đạt đến ngày hết hạn mà bất kỳ dữ liệu mới nào chúng tôi đã xử lý được thay thế bằng cảnh báo hết hạn. Vì vậy, ứng dụng hoạt động với dữ liệu hiện có nhưng không có bất kỳ dữ liệu mới nào mà người dùng đã nhập sau khi hết hạn. Kể từ khi ứng dụng của chúng tôi xử lý tin nhắn văn bản, thiết lập lại đồng hồ là một giải pháp lâu dài không thực tế để người dùng khắc phục hết hạn.

1

Bạn có thể sử dụng TelephonyManager.getDeviceId() và tạo bản dựng ứng dụng sẽ chỉ chạy trên điện thoại của người đánh giá.

Bạn có thể mã hóa mã này vào ứng dụng hoặc kiểm tra điện thoại với máy chủ của mình nơi bạn muốn lưu trữ quyền cho từng ID thiết bị. Với trường hợp sau, bạn có thể yêu cầu ứng dụng hiển thị ID thiết bị khi ứng dụng không thể tìm thấy giấy phép; người đánh giá cho bạn biết điều này và sau đó bạn nhập điều này vào DB của bạn.

0

Tùy thuộc vào loại ứng dụng bạn đang cung cấp cho người đánh giá, bạn có thể có một tùy chọn khác.

Bạn mã hóa nó giống như nhiều phần mềm chia sẻ và chỉ cho phép ứng dụng chạy quá nhiều lần. Mã cho việc này sẽ rất dễ thực hiện. Chắc chắn người đánh giá có thể xóa dữ liệu nhưng không dễ dàng. Tôi không nghĩ rằng họ sẽ trải qua rất nhiều rắc rối cho một vài đô la.

2

Tôi chỉ nghĩ một cách tuyệt vời để làm điều này. Bạn tạo phiên bản Beta của ứng dụng và bạn có thể xác định nhóm người thử nghiệm, bạn chỉ cần địa chỉ email của người đó hoặc cộng đồng G + mà họ có thể yêu cầu quyền truy cập và sau đó bạn thêm họ vào chương trình Beta.

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