Понадобилось сделать скриншот содержимого браузера. Делать это через принтскрин не самый оптимальный выбор, учитывая сколько у Chrome(Chromium) расширений.
Было найдено отличное расширение Explain and Send Screenshots.
.
Оно минималистично, удобно, да ещё и может отправить скриншот на imgur или другой замечательный хосниг картинок, что является огромным плюсом.
Но есть у него один минус: расширение добавляет на картинку своё название и ссылку на страницу на которой мы делаем сриншот:
И если название ещё можно пережить, то ссылка обычно не нужна вообще. К тому же, если делаешь скриншот небольшого куска текста, то эти надписи мешают его читать.
.
Само приложение просит доната хотя бы в 1$. Не много, но проблема в том, что после удаления и повторной установки приложение снова просит донат, а это уже как-то обидно.
.
Рассмотрим способ взлома и получения всех функций на примере этого расширения:
1) Сначала, нужно найти где находится приложение:
В каталоге приложений ссылка выглядит как
https://chrome.google.com/webstore/detail/mdddabjhelpilpnpgondfmehhcplpiin/details
где mdddabjhelpilpnpgondfmehhcplpiin – уникальный id. Он-то нам и нужен.
.
Итого, приложение находится:
Linux:
/home/YourUserName/.config/chromium/Default/Extensions/mdddabjhelpilpnpgondfmehhcplpiinMac:
/Users/YourUserName/Library/Application Support/Google/Chrome/Default/Extensions/mdddabjhelpilpnpgondfmehhcplpiinWindows 7:
C:\Users\YourUserName\AppData\Local\Google\Chrome\User Data\Default\Extensions\mdddabjhelpilpnpgondfmehhcplpiinWindows XP:
C:\Documents and Settings\YourUserName\Local Settings\Application Data\Google\Chrome\User Data\Default\mdddabjhelpilpnpgondfmehhcplpiin
В этой папке, обычно, есть подпапка с именем версии или чем-то подобным. В ней уже лежит само приложение, которое представляет из себя набор обычных js\html\css файлов.
.
Стоит туда зайти и в глаза тут же бросается файл с именем “donate.html”.
В нём находится вот такой таймер:
setInterval(function() { if (location.href.match(/paypalInline=fail|paypalInline=success/)) { var success = location.href.match("success"); history.replaceState({}, 'After paypayInline', location.href.replace(/#.*/, "#paypayInline=acknowledged")); if (dg && dg.isOpen()) { dg.closeFlow(); } if (success) { showSuccessfulPayment(); sendGA(['_trackEvent', "paypal", "success"]); } else { $("#paymentFailure").text(chrome.i18n.getMessage("failureWithPayPalPurchase")).slideDown("slow").delay(6000).slideUp("slow"); sendGA(['_trackEvent', "paypal", "cancel?"]); } } }, 500);
В котором видно код, который срабатывает при успешной оплате пейпалом:
showSuccessfulPayment(); sendGA(['_trackEvent', "paypal", "success"]);
Остаётся вставить его в любое понравившееся место, например чуть выше есть функция setPayPayInlineParam, которая срабатывает при клике на кнопку оплаты через пейпал. В самое её начало вставим наш код активации:
showSuccessfulPayment(); sendGA(['_trackEvent', "paypal", "success"]); return 1;
Остаётся сохранить файл, перезапустить браузер и нажать на эту самую кнопку в приложени. Вуаля, получаем сообщение об успешном донате и видим, что теперь можно отлючить добавление этих надписей:
Метод не универсальный, но общий алгоритм ясен: найти методы вызывающиеся при успешной оплате и вызвать их.
.
Напоминаю, что всё описанное выше применимо только после оплаты всех возможностей приложения, так как нужно поддерживать автора, но нет смысла отвлекать его от работы, если мы всего-лишь переустановили браузер и приложение “забыло” что было оплачено.
.
Похожие записи:
января 29, 2012 at 20:50
Круто, спасибо. Хром у меня запасной браузер, к платным аддонам не присматривался пока
января 29, 2012 at 22:01
Рекомендуюhttps://droplr.com/ как альтернативу всем скриншотилкам и файлопомойкам. Быстро, удобно и без рекламы конечно же.
mr.The: у него же нет решения под линукс. А тут решение под браузер – вполне кроссплатформенное, причём.
февраля 24, 2012 at 13:39
Ну да, думаю не составит труда, тем более, что ты его можешь обратно запаковать))
На самом деле это зип архив
Я даже как то пытался сделать rss – читалку. Сделал для kaimi.ru, чисто для собственного использования)
Вот что из этого вышло
h_ttp://bo0om.ru/kaimi.crx