Эмулятор Android на PC

17.01.2016 Без рубрики No comments , ,

Вы когда-нибудь задавались вопросами «Как запустить Star Trek Timelines на PC?» или «Как запустить Fallout Shelter на PC?» или «Как запустить Instagramm на PC?» и т.д? Иногда возникает необходимость запустить мобильную программу на полноценном компьютере. Для запуска Android приложений и игр в среде Windows я советую использовать Andy OS. С ее помощью можно запустить большинство популярных программ и игр, включая Fallout Shelter и Star Trek Timelines.
andy os

andy os 2

fallout shelter

star trek timelines

Если кто знает аналогичную программу для эмуляции iOS — буду благодарен за ссылку в комментах.

Ошибка доступа к папке

04.01.2016 Инструкции No comments , , ,

Сегодня расскажу, как исправить ошибку, которая не дает записывать файлы и/или создавать папки. Сам я столкнулся с данной проблемой давно, но она происходила редко и особо не мешала, так что я ее просто игнорировал. Однако, сегодня, наконец-то, руки дошли все исправить.
В чем суть ошибки? Очень простой пример:
origin error
Также, иногда, подобная ошибка выскакивает при попытке установить программу в нестандартный каталог (не Program Files). Я, например, все программы устанавливаю на отдельный физический диск, отдав первый диск только под систему.
После очередной переустановки системы, Windows начал ругаться на то, что у него нет доступа к моему второму диску. Недолго думая, я задал владельцем диска и всего, что нам нем есть свою текущую учетную запись. Посмотреть это можно нажав правой кнопкой на вашем диске в проводнике, дальше выбираете Свойства, потом безопасность, потом Дополнительно.
incorrect
Понял я это, когда попробовал установить игру в Origin. Он ругался, что не может начать загрузку. Я попробовал установить Origin в каталог по умолчанию (Prorgram Files) и всё решилось. Именно тогда я понял, что проблема с правами доступа. Дальше все было просто. Открываете рядом два окна — одно для основного диска, где стоит система, другое для для диска с ошибкой. И делаете права доступа у второго такими же, как у основного. У меня в результате получилось так:
correct
После этого всё заработало.

Простая установка Hackintosh (Mac Os X)

11.09.2014 Без рубрики No comments , , ,

MacBreaker
MacBreaker — отличный сайт по Хакинтошу.
Ниже вы найдете инструкции по установке Хакинтоша на виртуальную машину и в качестве основной системы.
How to install OS X Mavericks in Virtualbox with Niresh
How to install OS X Mavericks on your PC with Niresh
How to install iWork for free on a new Hackintosh [mini-guide]

Установка optware на Android

05.09.2014 Инструкции No comments , , , , , , ,

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

В данной статье я опишу процесс установки optware, transmission и flexget на Android ТВ-приставку. В качестве примера я использую MK809IV, однако данная инструкция должна сработать на любом Android устройстве с процессором ARM.

mk809iv

Данная статья основана на этой и этой с дополнительными знаниями подчерпнутыми из Google и Яндекса. Если у вас есть замечания или предложения по упрощению, прошу писать их в комментарии.

начнем с того, что нужно, для успешного проведения данной операции.

  • Компьютер с Linux (можно в виртуальной машине). Инструкция по установке есть здесь.
  • root на Android устройстве
  • Интернет на компьютере с Linux’ом и на Android устройстве
  • Скрипт установки optware.
  • SManager на ТВ приставке
  • s-off на Android устройстве (я так и не понял, как это проверить, но у меня создалось впечатление что это актуально только для телефонов/планшетов)

I. Подготовка

Запускаем Ubuntu или другой имеющийся у вас Linux.

Скачиваем скрипт установки optware в папку Downloads (можно в любую, но я буду в своём примере показывать действия именно для этой папки). Скачать можно, нажав на кнопку Raw.

Скриншот

Открываем терминал и вводим там следующую команду:

sudo apt-get install android-tools-adb

Система запросит пароль суперпользователя. Вводим его и нажимаем Enter. Напоминаю, что при вводе пароля в терминале не будет ничего отображаться — так и должно быть.

Скриншот

После этого вводим следующие команды:

cd ~
mkdir .android
cd .android
nano adb_usb.ini

Скриншот

Данные команды создадут в домашнем каталоге текущего пользователя папку с названием «.android» и запустят текстовый редактор nano для создания файла «adb_usb.ini».
В этом файле нужно написать

0x2207

Скриншот

После этого нажимаем ctrl+x, потом подтверждаем сохранение изменений, нажав «y», а потом нажимаем Enter, чтобы подтвердить название файла.

Теперь переключаемся на ТВ-приставку.

Рекомендую запитать её напрямую от компьютера, на котором установлен Linux.
Я использую MK809IV (аналог MK809III и MK802IV), основанную на чипе RK3188-T и чипе связи AP6210 с прошивкой Neomode smic717394_809III_1080p_V4, но вы можете использовать любое устройство с Android, основанное на процессоре ARM, главное, чтобы был root.

На Android устройстве открываем настройки, выбираем «Для разработчиков». В правом верхнем углу переводим переключатель в положение «вкл» и подтверждаем, что знаем о возможных последствиях. После этого ставим галочку в поле «Отладка по USB»

Скриншот

После этого в настройках переходим на «USB» и ставим галочку в поле «Connect to PC».

Скриншот

Теперь переключаемся на наш компьютер. В свойствах виртуальной машины выбираем подключение USB устройства к Linux.
PS: если вы не перепрошивали ваше устройство и не устанавливали соответствующий драйвер, то здесь у вас может быть название вроде «Неизвестное устройство».

Скриншот

После этого в терминале вводим:

sudo adb devices

Скриншоты

После строчки «List of devices attached» должна быть еще одна строчка с буквенно-цифровым кодом вашего устройства. Если она есть, то всё в порядке двигаемся дальше. Если нет, то делаем следующее:

перезапуск adb

II. Установка optware

Теперь вводим в терминал команды

cd ~/Downloads
chmod +x optware-install-via-adb.sh
./optware-install-via-adb.sh

Скриншот

Дальше ждем, пока скачаются и установятся все необходимые пакеты.
В конце должно появиться подтверждение:

Скриншот

На этом установка optware закончена. Для запуска необходимо выполнить следующие команды

adb shell
/data/opt/start.sh

После этого выполним обновление:

ipkg update
ipkg upgrade

Скриншот

Полезные команды:

ipkg list — показывает список доступных пакетов
ipkg install ABC — устанавливает пакет ABC
ipkg remove ABC — удаляет пакет ABC

III. Установка flexget, transmission и openssh

Необходимые пакеты каждый выбирает сам. Ниже я опишу как установить openssh, transmission и flexget.

Начнем с openssh. Этот пакет позволит подключаться к терминалу Android устройства по сети.
Устанавливается пакет простой командой:

ipkg install openssh

После установки, openssh должен быть запущен. Это можно проверить командой

top|grep sshd

Через пару секунд на экране должна появиться строчка вроде такой:

1735 root 3208 R /opt/sbin/sshd

Она будет продолжать выводиться, пока вы не нажмете ctrl+c.
Подробная инструкция по настройке на сайте nslu2.

Далее установим transmission:

ipkg install transmission

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

/opt/bin/transmission-daemon

Всё, transmission установлен. Доступ через web-интерфейс по адресу localhost:9091 с самой приставки, либо по ip-address:9091 с любого компьютера в сети. Также есть отдельные программы для Windows, Linux и Mac OS для удобного управления данным клиентом. Подробнее смотрите на официальном сайте программы. Если не удается подключиться с других устройств в сети, то нужно отредактировать файл /opt/home/root/.config/transmission-daemon/settings.json. Этот файл появиться после первого запуска transmission.

Теперь перейдём к flexget. Тут процесс несколько сложнее. Последовательно выполняем следующие команды в терминале.

ipkg install nano
ipkg install cron
ipkg install python27
ipkg install py27-setuptools
/data/opt/bin/easy_install-2.7 flexget
/data/opt/bin/easy_install-2.7 transmissionrpc

Flexget установлен. Подробно останавливаться на его настройке я не буду. Всю необходимую информацию вы можете найти на сайте программы.
Единственное, что я советую в cron явно указывать путь к конфигурационному файлу, например:

*/30 * * * * /opt/local/bin/flexget -c /opt/home/root/confi.yml execute

IV. Настройка автозапуска

Автозапуск мы настроим с помощью SManager.
Для этого в программе переходим в папку /data/opt и нажимаем на файл start.sh. В появившемся меню нажимаем Script/executable.
В появившемся окошке нажимаем кнопки Fav, Boot, Su и Ntfy. Нажимаем сохранить. После этого рядом с кнопкой Ntfy появиться еще кнопка NoO нажимаем её тоже.

Скриншот

Этого должно быть достаточно, установленные программы должны запускаться через скрипты в папке /data/opt/etc/init.d.
Если этого не происходит, то ко всем скриптам в этой папке выполняем действия описанные выше.
Важно! SManager запускает скрипты в алфавитном порядке. Первым должен запускаться start.sh. При необходимости переименуйте скрипты.

Скриншот

Настроить автоматический запуск можно так же в cron’е. Однако для этого он должен быть запущен, соответственно его нужно добавить в SManagеr, как описано выше (если он не запустился из папки init.d).
Для редактирования cron нужно выполнить следующие команды:

export EDITOR=nano
crontab -e

Подробное описание cron вы можете найти здесь.

Установка Ubuntu 14.04

03.09.2014 Инструкции No comments , , ,

В данной инструкции я не буду вдаваться в причины для установки Linux’а, а просто опишу как это делается. Для примера я буду использовать дистрибутив Ubuntu. Установка других дистрибутивов может отличаться, но общая схема действий будет примерно такой же.

Для начала скачаем всё необходимое.

В своём примере я покажу установку Ubuntu на виртуальную машину VirtualBox. Ход установки будет одинаковым, как для установки в виртуальной машине, так и для установки в качестве основной системы. Отличаться будут только подготовительные шаги.
Для установки на виртуальную машину, необходимо скачать и установить VirtualBox или другую программу для работы с виртуальными машинами. При установке в качестве основной системы необходимо записать скаченный дистрибутив на USB флеш или DVD диск, после чего перезагрузить компьютер и выбрать в качестве загрузочного устройства USB или DVD.

Сам дистрибутив можно скачать на официальном сайте или на одном из зеркал, например на Яндексе.

Если вы ставите на виртуальную машину, то я советую остановиться на 32-битной системе. Если же вы собираетесь использовать Ubuntu в качестве основной системы, то я рекомендую использовать 64-битную версию.
Отличить их можно по окончанию в названии файла скачиваемого дистрибутива: i386 означает 32-битную версию, а amd64 — 64-битную версию.

Начинаем подготовку виртаульной машины.

Запускаем VirtaulBox.

1. Нажимаем на кнопку создания новой виртуальной машины.
2. Вводим название виртуальной машины, например «Ubuntu», выбираем тип системы «Linux», версия «Ubuntu (32 bit)» и жмем «Next».
3. Выбираем размер оперативной памяти. Все зависит от вашей системы, я рекомендую 2048 Мб. После указания размера жмем «Next».
4. Выбираем «Создать новый виртуальный диск» и жмем «Создать».
5. Тип диска оставляем VDI. Жмем «Next»
6. Я рекомендую выбрать «динамический виртуальный диск», но это не принципиально. Жмем «Next».
7. Размер диска зависит только от наличия свободного места на диске и того, как вы планируете использовать систему. Для «просто посмотреть» достаточно 8 Гб. Жмем «Создать».

Скриншоты

Виртуальная машина создана. Выбираем ее в окне VirtualBox и жмем кнопку «Настроить» сверху.
В настройках я рекомендую внести следующие изменения:
8. Включить двунаправленный буфер обмена
9. Выделить побольше памяти под видео
10. выбрать диск для установки системы.

Скриншоты

11. Жмем «запустить» и ждем пока запустится установщик Ubuntu. В появившемся окне слева выбираем язык системы и нажимаем «Установить Ubuntu»
12. По желанию/необходимости можно скачать последние обновления и установить декодер MP3. Особой необходимости ни в одном, ни в другом нет. Это все можно сделать потом.
13. Выбираем «Стереть…». Параноики могут добавить шифрование. Внимание! Если вы устанавливаете Ubuntu в качестве основной системы, а не на виртуальную машину, то все данные на выбранном диске будут удалены. Будьте осторожны!
14. Выбираем часовой пояс.
15. Выбираем раскладку клавиатуры.
16. Указываем имя пользователя и пароль.

Скриншоты

17. После этого ждем, пока система установится. По окончании установки перезагружаемся.

Скриншоты

Если вы устанавливали Ubuntu в качестве основной системы, а не на виртуальную машину, то на этом всё — можете приступать к работе.
Если же вы устанавливали Ubuntu на VirtualBox, то нужно установить дополнительный набор программ/драйверов.

18. Вверху нажимаем «Устройства -> Приводы оптических дисков -> Выбрать образ оптического диска». В появившемся меню переходим в папку, куда установлен VirtualBox и выбираем файл VBoxGuestAdditions.
19. Жмем кнопку «Запустить».
20. Вводим пароль, который указали при установке системы и жмем «Аутентифицировать».
21. Ждём установки всех компонентов, после этого нажимаем Enter.
22. Перезагружаем Ubuntu.

Скриншоты

Все, система готова к работе.

Обновление прошивки MK809IV

03.09.2014 Инструкции No comments , , , , , , ,

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

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

mk809iv

Помимо различных корпусов, есть еще отличия в начинке.
Как правило на всех сайтах пишут, что данные устройства основаны на чипе RK3188. По факту их две разновидности: RK3188 и RK3188-T.
Второе отличие в чипе связи (Wi-Fi, BT). По моим изысканиям они бывают трёх типов: AP6210, MTK, Realtek.
Существуют альтернативные прошивки для всех вариантов. Тут надо обратить внимание на чип связи, т.к. с процессором проблем не возникает. найти нужную прошивку можно здесь.

Моё устройство имеет чипы RK3188T и AP6210. Для него я выбрал прошивку smic717394_809III_1080p_V4, чтобы устройство смогло на выходе выдавать полноценные 1080p.

Фото внутренностей

Для начала скачиваем подходящую прошивку и распаковываем скаченный архив. Его содержимое выглядит примерно так:

содержание папки перепрошивки

Дальше готовим устройство. Отключаем его от всего. Вставляем кабель микро USB в устройство, но никуда его не подключаем. В маленьком отверстии, которое видно на фото ниже, нажимаем зубочисткой на кнопку и держим её нажатой. Удерживая зажатой кнопку подключаем кабель USB к компьютеру.

mk809iv 2

Когда Windows определит, что вы подключили неизвестное устройство, кнопку можно отпустить. Теперь переходим к установке драйвера. В диспетчере устройств находим наше устройство и нажимаем обновить драйвер, затем «Выполнить поиск драйверов на этом компьютере» и указываем путь к распакованному архиву, выбираю свою систему в папке «Driver». Жмём «Далее».

новое устройство ид оборудования путь к драйверу

Драйвер установлен. Теперь переходим непосредственно к обновлению прошивки.
В папке с распакованным архивом запускаем файл «RKAndroidTool.exe». Если драйвер установился нормально, то вы увидите примерно такую картинку:

rkandroidtool

Если же внизу вы видите надпись «No Found RKAndroid rock usb», значит драйвер встал неправильно. Советую переустановить или попробовать на другом компьютере. Мне не удалось запустить перепрошивку на Windows 8.1 x64, а на Windows 7 x64 она отлично сработала. Нажимаем кнопку «Flash ROM» (иногда она называется просто «Run») и ждём.
По окончании получаем сообщение «Info: Run OK».

rkandroidtool done

Всё. прошивка завершена. Отключаем устройство от компьютера и подключаем к постоянному месту дислокации.

Внимание! Первый запуск после перепрошивки может занять продолжительное время.

Список видео CS50

29.07.2014 Без рубрики No comments

Shorts:
Algorithms
ASCII
Binary
Scratch
Threads
Functions
Libraries
Make, Clang
Precedence
Style
Typecasting
Variables
RSA
Scope
Asymptotic notation
Binary search
Buble sort
Command-line arguments
Insertion sort
Linear search
Quicksort

Vigenere cipher
GDB
Merge sort
Pointers
Recursion
Strings
CS50 Library
File I/O

Singly linked lists
Structs
Tries
Valgrind
HTTP
Queues

CSS
DOM
HTML
PHP sessions
PHP syntax
PHP web development
SQL

Указатель

25.07.2014 edX No comments , ,

Объявление
int* pointer_to_n = &n;
&n - адрес переменной
адрес хранится в шестнадцатеричной системе (HEX)

Использование
*pointer_to_n = значение;
заменяет значение, расположенное по адресу переменной n

int x = 2, y = 8, z = 12; //объявление переменных
int* ptr_x = &x; // сохраняет адрес x в ptr_x
int* ptr_y = &y; // сохраняет адрес y в ptr_y
int* ptr_z = &z; // сохраняет адрес z в ptr_z
z = x * y; // z = 2 * 8 = 16
x *= y; // x = x * y = 16
y = *ptr_x; // y = 16
*ptr_x = x * y; // x = 16 * 16 = 256
ptr_x = ptr_y; // сохраняет адрес y в ptr_x
x = (*ptr_y) * (*ptr_z); // x = 16 * 16 = 256

Структура

24.07.2014 edX No comments , ,

.h файлы содержат объявление функций (declaration)
-l подцепляет описание функций (implementation)

Debugger

24.07.2014 edX No comments , ,

gdb — GNU debugger

команды:
run - запустить программу
break (b) main - остановится на main
continue (c) - продолжить до следующего break
next (n) - следующая строка
step (s) - входит в функцию
print (p) - напечатать переменную
p переменная значение - меняет значение переменной на указанное
list - вывести кусок кода
quit (q) - выход из процесса
info locals - показывает все локальные переменные
disable - убирает break