Продлить пробный период android

Продлить пробный период android

Сбросим Trial-time
нубский способ

Как многие знают чтобы заморозить триальный период в программе необходим навык крекинга, ну или хотя бы мизер знаний программирования. Что же развеем немного данные домыслы и станем на шаг ближе к хаку.

Нам понадобится:
1)SkTracker — им отследим где мусорит прога
2)MortScript — это в помощь для автоматического удаления ключей
3)Restorator.rar ( 3.24 МБ )
(ББ) — этим прикрутим иконку.
4)BHU.rar ( 2.64 КБ )
— лоадер(BHU 0.5b),поможет в некоторых случаях обойтись без мортскрипта.
5)Блокнот на ББ(можно и на звере)
6)Эмулятор КПК — пригодится для того чтобы не делать каждый раз ХР для узнавания куда же прога пишет бряки
7)Resco Explorer — поможет работать с реестром и скрытыми файлами
8)WinCE CAB Manager — поможет открыть каб и понять что прога создала сама а что было в установщике.

И так,выбираем подопытного.
Пусть будет ThumbCal на него правда есть кейген но всеже. наглядный пример триала(14-ти дневный демо-режим).

И так,поехали.

1)Делаем снимок SkTracker-ом
2)Устанавливаем каб подопытного,программа запустится сама по окончанию установки(Вообще обычно первый снимок делается перед первым запуском программы)
3)Делаем второй снимок
4)Выделяем оба снимка и сравниваем

как успели заметить насрала программа порядочно
5)начинаем смотреть что у нас тут где.
Видим что программа создала интересный файлик в папке windows

Запомним его,поплыли дальше.
Дальше него пошел реестр,как успеваем заметить в нем со значениями почти ничего нет,а значит нам оно не интересно(ну как минимум должно быть число могущее сохранить как минимум дату).Вернемся к файлу.
6)Смотрим его свойства через Resco Explorer

угу,скрытый,ну для простоты уберем все галочки(хз зачем,я всегда так делаюА вообще главное чтобы «Только чтение» было отключено)
7)Пробуем открыть его текстовым редактором(Пусть будет Word на звере,хотя я советую litenote)

Видим белиберду.Окей.
8)Переводим часы на месяц вперед,запускаем календарик.Ой,нам запрещают,со словами «халява кончилась».Выходим.
9)Удаляем файлик найденный в винде.
10)Запускаемся и вуаля,снова 14 дней.
11)Теперь нам нужно сделать так чтобы все проходило в автоматическом режиме.
12)Пишем скрипт

(данный скрипт написан специально под мое железо,ибо в данной программе этот файл в винде генерируется относительно имени КПК.Способ написания скрипта есть в файлике commands.txt)
13)Далее берем лоадер(BHU 0.5b) и меняем ему иконку на содранную с ThumbCal.(с помощью restoratora)
14)Открываем конфиг от лоадера(блокнотом)
И пишем примерно следующее

15)Сохраняем все
16)Кладем скрипт,лоадер и конфиг в папку с прогой
получится примерно вот так.

17)Запускаем лоадер и радуемся.Проверяем работоспособность переводом часов на месяц туда сюда.Создаем ярлык на лоадер и радуемся первой побежденой триальности.

Спешу вас огорчить.Данным способом можно сбросить далеко не все триальные режимы.Тоесть по сути можно только с временной задержкой.
Так же бывают различные «подводные камни» из их числа такие как проверка на сервере online и точка окончания триала (то есть добавление ключа в реестр или файл при последнем запуске программы).Но как правило их тоже можно легко обойти, ну вот собственно и все.

Сообщение отредактировал romchk — 09.06.11, 01:58

Источник

Как пользоваться платной версией приложения бесплатно?

Всем привет! Сегодня я расскажу о нескольких способах, как можно пользоваться платной версией приложения абсолютно бесплатно.

Способ №1. Скачать «взломанную» версию в интернете.

Сейчас есть очень много вариантов, откуда можно скачать взломанную версию программы. Такие версии приложений в основном безопасны и не вредоносны (но даже несмотря на это, лучше все-таки скачивать с проверенных источников).

Способ №2. Пробная версия.

В основном у приложений существуют пробные версии на определенный период: две недели, месяц, три месяца или даже на больше. Возьмем для примера очень крупные музыкальные сервисы Apple Music, Spotify или даже Яндекс.Музыку (у них есть пробная версия подписки). Для того, чтобы ею воспользоваться, мы должны:

  • Создать аккаунт
  • Нажать на предложение подписки
  • Ввести данные карты и нажать «оформить пробную подписку»
  • Готово!

Главное — не забудьте отменить ёё ближе к окончанию срока подписки!!

Если захотите, то вы можете повторить такой алгоритм еще раз.

Способ №3. Найти бесплатную альтернативу приложения (если 2 предыдущих способа не подходят)

В основном, в интернете также есть бесплатные альтернативы платным приложениям, которые могут даже быть лучше платных приложений, например, по количеству функций. При этом так вы точно сэкономите.

Читайте также:  4pda android прошивки для samsung

Источник

Создание пробного приложения Android, срок действия которого истекает через определенный период времени

У меня есть приложение, которое я хочу выпустить на рынок в качестве платного приложения. Я хотел бы иметь другую версию, которая будет «пробной» версией с временным интервалом, скажем, 5 дней?

Как я могу это сделать?

В настоящее время большинство разработчиков выполняют это, используя один из следующих трех методов.

Первый подход легко обойти, при первом запуске приложения сохранить дату / время в файле, базе данных или общих настройках и каждый раз, когда вы запускаете приложение после этой проверки, чтобы проверить, закончился ли пробный период. Это легко обойти, поскольку удаление и переустановка позволит пользователю провести еще один пробный период.

Второй подход сложнее обойти, но все же обойти. Используйте жестко закодированную бомбу замедленного действия. В основном при таком подходе вам будет сложный код для даты окончания пробной версии, и все пользователи, загружающие и использующие приложение, перестанут быть в состоянии использовать приложение одновременно. Я использовал этот подход, потому что его легко реализовать, и по большей части мне просто не хотелось преодолевать проблемы третьего метода. Пользователи могут обойти это, вручную изменив дату на своем телефоне, но большинство пользователей не смогут решить эту проблему.

Третий метод – единственный способ, которым я слышал, чтобы действительно быть в состоянии выполнить то, что вы хотите сделать. Вам нужно будет настроить сервер, а затем, когда ваше приложение будет запущено, ваше приложение отправит уникальный идентификатор телефона на сервер. Если на сервере нет записи для этого идентификатора телефона, он создает новый и отмечает время. Если у сервера есть запись для идентификатора телефона, тогда он выполняет простую проверку, чтобы проверить, истек ли испытательный период. Затем он передает результаты проверки истечения срока действия пробной версии в ваше приложение. Такой подход не должен быть обходным, но требует установки веб-сервера и т. Д.

Всегда хорошая практика делать эти проверки в onCreate. Если истечение закончило всплывающее окно AlertDialog с рыночной ссылкой на полную версию приложения. Включите только кнопку «ОК», и как только пользователь нажимает «ОК», позвоните в «finish ()», чтобы завершить действие.

Это старый вопрос, но в любом случае, возможно, это поможет кому-то.

В случае, если вы захотите использовать наиболее упрощенный подход (который не удастся, если приложение будет удалено / переустановлено или пользователь изменит дату устройства вручную), так оно и может быть:

Я разработал Android Trial SDK, который вы можете просто заглянуть в свой проект Android Studio, и он позаботится обо всех серверах для вас (в том числе автономных периодов льгот).

Чтобы использовать его, просто

Добавьте библиотеку в build.gradle вашего основного модуля

Инициализировать библиотеку в onCreate() основной активности

Добавить обработчик обратного вызова:

Чтобы начать пробную версию, вызовите mTrialy.startTrial(«YOUR_TRIAL_SKU», mTrialyCallback); Ключ вашего приложения и пробный SKU можно найти в панели инструментов разработчика Trialy .

Эй, ребята, этот вопрос, и ответ snctln вдохновил меня на решение проблемы, основанной на методе 3, как мой диплом бакалавра. Я знаю, что текущий статус не для продуктивного использования, но я хотел бы услышать, что вы об этом думаете! Вы бы использовали такую ​​систему? Вы хотите увидеть его как облачную службу (не имея проблем с настройкой сервера)? Обеспокоена проблемами безопасности или соображениями стабильности? Как только я закончил процедуру бакалавра, я хочу продолжить работу над программным обеспечением. Итак, теперь, когда мне нужны ваши отзывы!

Некоторая информация о системе: – система состоит из трех частей: библиотеки Android, сервера node.js и конфигуратора для управления несколькими пробными приложениями и учетными записями издателей / разработчиков.

Он поддерживает только временные испытания и использует ваш (игровой магазин или другую) учетную запись, а не идентификатор телефона.

Для библиотеки Android она основана на библиотеке проверки лицензий Google Play. Я изменил его, чтобы подключиться к серверу node.js, и, кроме того, библиотека пытается узнать, изменил ли пользователь системную дату. Он также кэширует полученную пробную лицензию в зашифрованных общих настройках AES. Вы можете настроить допустимое время кэша с помощью конфигуратора. Если пользователь «очищает данные», библиотека будет принудительно проверять сервер.

Читайте также:  Нет разрешения для удаления андроид

Сервер использует https, а также цифровую подпись ответа на проверку лицензии. Он также имеет API для пробных приложений и пользователей CRUD (издателя и разработчика). Совместно с лицензиатом Verfication разработчики библиотеки могут проверить свою реализацию поведения в пробном приложении с результатом теста. Таким образом, вы в конфигураторе можете явно указать свой лицензионный ответ на «лицензию», «без лицензии» или «ошибку сервера».

Если вы обновите приложение с помощью новой функции, вы можете захотеть, чтобы все могли попробовать ее снова. В конфигураторе вы можете продлить пробную лицензию для пользователей с истекшими лицензиями, установив код версии, который должен инициировать это. Например, пользователь запускает ваше приложение на версии 3, и вы хотите, чтобы он попробовал функции кода версии 4. Если он обновляет приложение или переустанавливает его, он снова может использовать полный пробный период, потому что сервер знает, в какой версии он пробовал последний время.

Все находится под лицензией Apache 2.0

Самый простой и лучший способ сделать это – реализовать BackupSharedPreferences.

Настройки сохраняются, даже если приложение удалено и переустановлено.

Просто сохраните дату установки в качестве предпочтения, и вам хорошо идти.

Вот пример: Android SharedPreferences Backup не работает

Подход 4: используйте время установки приложения.

Начиная с уровня API 9 (Android 2.3.2, 2.3.1, Android 2.3, GINGERBREAD) в PackageInfo есть firstInstallTime и lastUpdateTime .

Чтобы узнать больше: Как получить время установки приложения из Android

Теперь в последней версии бесплатной ознакомительной подписки на Android вы можете разблокировать все функции своего приложения только после покупки подписки в приложении для бесплатного пробного периода. Это позволит пользователю использовать ваше приложение в течение пробного периода, если приложение по-прежнему будет удалено после пробного периода, тогда деньги подписки будут переданы вам. Я не пробовал, а просто делился идеей.

На мой взгляд, лучший способ сделать это – просто использовать базу данных Firebase Realtime:

1) Добавьте поддержку Firebase в ваше приложение

2) Выберите «Анонимная аутентификация», чтобы пользователь не должен был регистрироваться или даже знал, что вы делаете. Это, как гарантируется, будет привязано к учетной записи пользователя, прошедшей аутентификацию, и поэтому будет работать на разных устройствах.

3) Используйте API базы данных Realtime, чтобы установить значение для ‘installed_date’. Во время запуска просто извлеките это значение и используйте его.

Я сделал то же самое, и он отлично работает. Я смог проверить это при удалении / переустановке, а значение в базе данных в реальном времени остается неизменным. Таким образом, пробный период работает на нескольких пользовательских устройствах. Вы даже можете установить версию install_date, чтобы приложение «сбрасывало» дату пробной версии для каждой новой основной версии.

UPDATE : после тестирования немного больше, кажется, что анонимная Firebase, похоже, выделяет другой идентификатор, если у вас есть разные устройства и не гарантируется между переустановками: / Единственный гарантированный способ – использовать Firebase, но привязать его к своей Google Счет. Это должно работать, но для этого потребуется дополнительный шаг, когда пользователю сначала нужно войти в систему / зарегистрироваться.

Я до сих пор оказался немного менее изящным подходом просто проверять резервные настройки и дату, сохраненную в настройках при установке. Это работает для приложений, ориентированных на данные, где человеку бессмысленно переустанавливать приложение и повторно вводить все ранее добавленные данные, но не будет работать для простой игры.

По определению все платные Android-приложения на рынке можно оценить в течение 24 часов после покупки.

Появляется кнопка «Удалить и вернуть», которая меняется на «Удалить» через 24 часа.

Я бы сказал, что эта кнопка слишком заметна!

Я сталкиваюсь с этим вопросом во время поиска той же проблемы, я думаю, мы можем использовать бесплатную дату api, например http://www.timeapi.org/utc/now или другую дату api, чтобы проверить истечение срока действия трейла. Этот способ эффективен, если вы хотите доставить демо-версию и беспокоиться о платеже и потребовать демонстрацию демо-версии. 🙂

Его рабочее решение …..

Рассмотрев все варианты этого и других потоков, это мои выводы

Общие предпочтения, база данных Может быть очищена в настройках Android, потеряна после повторной установки приложения. Может быть скопирован с помощью механизма резервного копирования android и будет восстановлен после переустановки. Резервное копирование может не всегда быть доступным, хотя должно быть на большинстве устройств

Внешнее хранилище (запись в файл) Не влияет на ясность из настроек или переустановка, если мы не пишем в частный каталог приложения . Но: требуется, чтобы вы спросили пользователя о своем разрешении во время выполнения в новых версиях Android, поэтому это, вероятно, возможно только в том случае, если вам нужно это разрешение в любом случае. Также можно выполнить резервное копирование.

Читайте также:  Grand theft auto san andreas кэш для андроид

PackageInfo.firstInstallTime Сбрасывается после переустановки, но стабильно изменяется через обновления

Войдите в какую-то учетную запись. Неважно, если это их учетная запись Google через Firebase или одну на вашем собственном сервере: пробная версия связана с учетной записью. Создание новой учетной записи приведет к сбрасыванию пробной версии.

Анонимный анонимный анонимный анонимный вход. Вы можете анонимно войти в систему и сохранить данные для них в Firebase. Но, по- видимому, переустановка приложения и, возможно, другие недокументированные события могут дать пользователю новый анонимный идентификатор , сбросив пробное время. (Сами Google не предоставляют много документации)

ANDROID_ID Может быть недоступен и может измениться при определенных обстоятельствах , например, сброс настроек. Мнения о том, стоит ли использовать это для идентификации устройств, по-видимому, отличаются.

Play Advertising ID Может быть сброшен пользователем. Может быть отключен пользователем путем отказа от отслеживания объявлений.

InstanceID Сброс при повторной установке . Сброс в случае события безопасности. Может быть сброшено вашим приложением.

Какие (комбинации) методов работают для вас, зависит от вашего приложения и от того, сколько усилий вы думаете, что средний Джон внесет в очередной испытательный период. Я бы порекомендовал рулевое управление использовать только анонимную Firebase и рекламный идентификатор из-за их нестабильности. Кажется, что многофакторный подход даст наилучшие результаты. Какие факторы доступны для вас, зависит от вашего приложения и его прав.

Для моего собственного приложения я нашел общие предпочтения + firstInstallTime + резервное копирование предпочтений как наименее интрузивный, но и достаточно эффективный метод. Вы должны убедиться, что вы запрашиваете резервную копию только после проверки и хранения времени запуска в общих настройках. Значения в общих префайлах должны иметь приоритет перед firstInstallTime. Затем пользователь должен переустановить приложение, запустить его один раз, а затем очистить данные приложения, чтобы сбросить пробную версию, что довольно много. На устройствах без резервного транспорта пользователь может сбросить пробную версию, просто переустановив.

Я сделал такой подход доступным как расширяемая библиотека .

Вот как я пошел по моему, я создал 2 приложения один с пробной деятельностью другой без,

Я загрузил один без пробной активности, чтобы играть в качестве платного приложения,

И тот, у кого есть пробная деятельность как бесплатное приложение.

В бесплатном приложении при первом запуске есть опции для пробной и покупки магазина, если пользователь выбирает покупку магазина, он перенаправляет в магазин для покупки пользователем, но если пользователь нажимает на пробную версию, он переходит к пробной деятельности

NB: Я использовал опцию 3, например, @snctln, но с изменениями

Во-первых , я не зависел от времени устройства, я получил свое время от php-файла, который делает пробную регистрацию в db,

Во-вторых , я использовал серийный номер устройства, чтобы однозначно идентифицировать каждое устройство,

Наконец , приложение зависит от значения времени, возвращаемого из подключения к серверу, а не его собственного времени, поэтому можно отключить систему только в том случае, если серийный номер устройства изменен, что довольно сложно для пользователя.

Поэтому здесь идет мой код (для пробной деятельности):

Мой php-файл выглядит так (его технология REST-slim):

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

Единственная нижняя сторона, которую я вижу здесь, заключается в том, что если пользователь Rogue покупает платное приложение и решает поделиться с такими приложениями, как Zender, общий доступ к файлам или даже разместить файл apk непосредственно на сервере, чтобы люди могли скачать бесплатно. Но я уверен, что скоро отредактирую этот ответ с помощью решения или ссылки на решение.

Надеюсь, это спасет душу … однажды

Опцию @snctln 3 можно легко сделать, добавив php-файл на веб-сервер с установленными php и mysql, как и многие из них.

На стороне Android идентификатор (идентификатор устройства, учетная запись google o все, что вам нужно) передается в качестве аргумента в URL-адресе с использованием HttpURLConnection, а php возвращает дату первой установки, если она существует в таблице, или вставляет новую строку и Он возвращает текущую дату.

Источник

Оцените статью