» Мануалы

Удаление рекламы из приложений

В Google Play существует множество очень неплохих бесплатных приложений, но большинство из них «благословлены» встроенной рекламой, которая и является своеобразной платой за бесплатность. Некоторые пользователи относятся к рекламе спокойно, но большинство она всё же раздражает. Давайте разберемся, как убрать её из полюбившегося приложения.

Встроенную в Android-приложения рекламу предлагают различные рекламные агентства, в основном это AdMob или Google AdWords. Напоминаем, что перед тем, как выполнять манипуляции с любыми файлами на вашем устройстве, настоятельно рекомендуется делать резервные копии. Итак, всё по порядку. Распаковываем приложение при помощи ApkTool. Более подробно всё об APK-файлах описано в другой статье. Находим файл AndroidManifest.xml, открываем его с помощью Notepad++.

В случае, если реклама от AdMob, удаляем следующие строки:

Если же реклама от Google AdWords, то удаляем следующие строки:

Также, если просто удалить записи из AndroidManifest.xml, то в приложении всё-равно может всплывать черный баннер с красными символами, который говорит нам «Здесь должна быть реклама», то есть самой рекламы нет, но место для баннера осталось.

Это можно исправить, переходим в папку smali -> com -> google, где удаляем папку ads. Таким образом мы избавляемся уже не только от рекламы, но и от назойливого баннера.

Может возникнуть ситуация, когда после удаления папки приложение отказывается запускаться. Тогда запускаем Notepad++, нажимаем «Поиск» и выбираем «Найти в файлах», указываем папку с декомпилированным приложением, папку smali и ищем фразу «You must have AdActivity declared in AndroidManifest.xml». После завершения поиска удаляем данную строку, которая в большинстве случаев находится в файле AdView.smali. Не забываем удалить рекламу в AndroidManifest.xml, как описано немного выше. Собираем приложение обратно (папку ads не удаляем!). Теперь всё должно работать нормально.

Если баннер графический, то есть картинка, то сначала удаляем всё, как обычно в AndroidManifest.xml и соответствующих папках, как было описано выше. После чего заходим в папку drawable (она находится в папке res) и находим файл баннера.

Открываем картинку и при помощи любого графического редактора (подойдет и стандартный Windows`овский Paint) уменьшем её до размера 1х1 пиксель.

Сохраняем её, перезаписывая оригинал, и запаковываем APK-приложение.

Кроме того, можно удалить файл, который находится по следующему пути:

system/etc/hosts

В сети же ищем файл hosts с нужными исправлениями, и копируем его на прежнее место. Для таких манипуляций понадобятся Root-права. В чем суть данного редактирования? Рекламные сайты в модифицированном файле host ссылаются на IP-адрес 127.0.0.1, который является внутренним, и, таким образом, не могут подключаться к интернету. Можно и самостоятельно прописать любые интернет-адреса в этот файл, в следующем виде:

127.0.0.1 site.com (где site.com меняем на адрес, который нужно заблокировать)

Самый простой и быстрый способ убрать рекламу – это установить с Google Play (Android Market) приложение AdFree. Для его работы также потребуются Root-права. После установки его, с удовольствием пользуемся своим устройством без какой-либо рекламы.

Похожие статьи

Отзывы
  1. Vostok All, 14.04.2013 в 10:35

    Приложение после Удаления рекламы не запускается в обоих случаях:1. Если я  удаляю папку ads;  или2. Если я Не удаляю папку ads, но удаляю строку  «You must have AdActivity declared in AndroidManifest.xml……» в файле AdView.smaliВообще с этой строкой проблема. В принципе не понятно, возможно ли её вообще удалить? Приложение запускается только если удалить саму надпись (You must have AdActivity declared in AndroidManifest.xml with configChanges.) а кавычки, в которых эта надпись была, номер и название строки оставить не тронутыми. Тоесть вот так: if-nez v0, :cond_0.line 227const-string v0, » «invoke-direct {p0, p1, v0, p2, p3}, Но в этом случае при запуске Приложения, вверху — в шапке, сияет красный пустой прямоугольник. Он сильно раздражает !Есть  какие-нибудь варианты решения?

  2. saintanger69, 14.04.2013 в 13:40

    А можете дать ссылочку на файл? Попробоую разобрать и собрать, отпишусь что вышло

  3. Vostok All, 15.04.2013 в 08:56

    Спасибо, разобрался. Откровенно говоря купился на скриншот с выделенной фразой  — «You must have AdActivity declared in AndroidManifest.xml…..». И только в последний момент понял, что речь идёт об удалении Строки. Хорошо, что имею опыт по написанию сайтов и работе с кодом .html  и .php.  Но вот читатель не знакомый с устройством кода То, что выделено на скриншоте — То и удалит, а вместе с тем следует удалять ВСЮ Строку, начиная  с кода —  .line 127 до следующего наименования другой строки.  Скриншот по хорошему  надо бы  переделать, чтобы всем было абсолютно понятно.

  4. Vostok All, 15.04.2013 в 08:59

    И потом, папку ads вообще не стоит трогать. Редактировал порядка десяти файлов и везде её удаление приводило к остановке приложения. Достаточно удалить вышеназванную строку в файле  AdView.smali и рекламе подгрузиться будет неоткуда.

  5. Vostok All, 15.04.2013 в 11:45

    Но труднее всего когда код идёт без разметки типа:  .line 127Вообще статья  «сырая».

  6. saintanger69, 15.04.2013 в 16:31

    Ну вот вы писали что умеете писать на php и хтмл, а я вот нет, В инете ничего подобного нет, делал для себя, а после для всех. 

    • Vostok All, 16.04.2013 в 07:16

      А Вы автор этой статьи ?

  7. saintanger69, 16.04.2013 в 10:11

    Да, именно так. публикацию можете найти на другом сайте (ушел с того ресурса и вот теперь  здесь админю), можете мне туда написать, я могу Вам и там ответить, если сомневаетесь.

  8. Vostok All, 19.04.2013 в 12:27

    Блин, поменяли дизайн сайта, раз пять уходил, думал не туда попал 🙂 Ну так вот. Когда Код в файле AdView.smali    идёт без чёткого обозначения Строк типа:  .line 120 (к примеру), то удаление строки приводит к сбою запуска. Тут надо какое то иное решение.

  9. Андрей Павлов, 03.03.2014 в 16:07

    Хотел поинтересоваться, а есть ли возможность не удалить, а заменить рекламму в приложении на свою. И если не сложно, подскажите как

  10. Димка, 16.03.2015 в 16:23

    Может проще рекламу патчером удалить и не мучатся? http://lucky-patcher.at.ua

Добавить комментарии