Колонка редактора: Создаем Portable-версию любого приложения
В одном из уже давнишних номеров ][ у нас была статья «Portable – вот она, радость», где мы рассказывали, как из практически любой программы можно сделать портируемую версию, которая будет запускаться без установки, записать ее на флешку и всегда носить с собой. В ход тогда была пущена дорогостоящая утилита Thinstall.
Позже этот проект был куплен компанией VMware, и весь его функционал сейчас представлен в приложении VMware ThinApp. Как и другие продукты этой компании, ThinApp занимается виртуализацией, а точнее – виртуализацией приложений. Задача такой операции в том, чтобы создать виртуальное окружение для отдельно взятого приложения.
Это приложение не должно подозревать о том, что запущено на другом компьютере; оно может, как и задумано разработчиками, обращаться к реестру, файловой системе и находить там ключи и файлы, которые были добавлены во время процедуры установки. Файлы приложения и все необходимые данные помещаются в единственный исполняемый .EXE-файл.
Компьютерные игры на Android и iPhone
Во время его запуска в системе развертывается виртуальное окружение, которое эмулирует нужные ключи реестра, DDL’ки, библиотеки сторонних разработчиков, всевозможные фреймворки, а приложение запускается как ни в чем не бывало. При этом никакие драйвера в систему не устанавливаются, в реестр изменения не вносятся – приложение полностью работает внутри виртуального окружения. Хороший подход, и ThinApp отлично его реализует, но одна загвоздка – решение стоит как минимум $6050. Не кисло, да?
Впрочем, аппетит компании, возможно, в скором времени утихнет, потому как в Сети недавно появилось реальная альтернатива для виртуализации приложений. Программа Cameyo (www.cameyo.com) делает ровно то же самое, что и ThinApp, с одной лишь разницей – ничего за это не просит. И знаешь, на месте VMware я бы начинал бояться.
Сложно представить, как можно сделать процесс портирования еще проще, чем это реализовано в Cameyo. После установки из 1,5 Мб дистрибутива пользователю предлагается интерфейс с двумя кнопками: одна для создания нового контейнера, а другая — для модификации ранее созданных пакетов.
Если нажать на первую («Capture installation») программа начнет делать слепок (snapshot) системы, сохраняя для себя состояние файловой системы и реестра – от этой информации ей придется отталкиваться. Как только snapshot будет сделан, Cameyo предложит приступить к установке приложения, для которого необходимо сделать Portable-версию.
Пусть это будет Opera, а для полноты картины – еще и Flash-плеер для нее, а также Java-плагин. Тут никаких заморочек, просто устанавливаем все, как обычно; если требуется перезагрузка – смело ребутимся (это корректно обрабатывается). Как только установка и настройка закончены, можно нажимать на кнопку «Install done». В этот момент Cameyo еще раз сделает слепок системы, чтобы сравнить, какие изменения произошли, и на основе этих данных создать Portable-пакет. Процесс может занять несколько минут, после чего программа обрадует сообщением «Package successfully created».
Как создать Portable версию любой программы
Вот, собственно, и все. Получившийся EXE’шник можно попробовать запустить на любой Windows-системе и убедиться, что и сам браузер, и все дополнительно установленные плагины работают. Можно записывать на флешку и без каких-либо проблем использовать на любом компьютере.
Правда, есть один нюанс — в контейнер помещается довольно много различных данных, поэтому вес пакета может быть довольно внушительным. Например, получившийся у меня пакет с Opera 10.62 весит аж 139 Мб. Но тут есть секрет: если изучить содержимое контейнера, легко обнаружить в нем файлы, которые Cameyo поместил в него по ошибке, и на самом деле никакой необходимости в их виртуализации нет.
Скажем, в мой пакет с Opera попал файл с индексом Dropbox’а, которой весит почти 15 Мб, а ведь это десятая часть всего объема получившегося пакета. Посмотреть, что находится внутри контейнера, и внести изменения можно через Cameyo, кликнув по второй (и последней) доступной кнопке «Edit existing package». На вкладках «Files» и «Registry» легко увидеть, какие файлы и ветки реестра эмулируются.
При необходимости любой элемент можно удалить или наоборот, что-то добавить. Интересная опция доступна на самой первой вкладке «General» – это Isolation Mode. По умолчанию любое Portable-приложение работает полностью изолированно и не может вносить изменения в систему. Однако при необходимости режим пакета можно изменить на «Full Access», и тогда у программы появится полноценный доступ к файлам и реестру, как и у любого другого приложения.
Помимо самого Cameyo, на сайте разработчика есть SDK для разработчика. С помощью простого API вполне реально автоматизировать процесс, полностью заточить его под свои нужды. С помощью простых функций легко получить список файлов внутри пакета, работать с ключами реестра, которые редактируются, и т.д. Короче говоря, все в твоих руках.
Степа Ильин
Главный редактор «Хакера» с 2012 по начало 2014 года. Сейчас с командой единомышленников строит компанию Wallarm, разрабатывающую решения для защиты веб-приложений от хакерских атак и обнаружения в них уязвимостей.
Источник: xakep.ru
Что такое портативные программы и LiberKey
Преимущество портативных программ в одном — их нет нужды устанавливать в операционную систему. Ими можно пользоваться сразу, разместив в отдельную папку или лучше всего — на флешку. Такие программы не прописываются в системных файлах, реестре … и не оставляют «хвостов» (щупалец спрута) после удаления. В этом и заключается их отличие от обычного софта.
Можно ли скопировать установленную программу или игру в компьютере и передать её другу или перенести на другой комп — нет конечно, она вмонтировалась в систему, прописалась там, куда только можно. Её не перенести уже и не выкорчевать, только удалить сможете, а вот портативную, портабельную программу легко получиться скопировать и носить с собой.
Согласитесь, гораздо удобнее пользоваться портативным браузером и брать его с собой в гости или на работу со всеми настройками и закладками. Вставили флешку в любой компьютер и вот он родимый, свой, привычный. По окончании работы вытянули накопитель и никаких следов — всё своё ношу с собой.
Это не отдельные, другие программы — такой можно сделать практически любую программку. Для этого используют специальные редакторы (один из них описывал тут на сайте).
Наверняка видели, когда скачивали понравившийся или нужный софт подобные ссылки с допиской — portable…
…это и есть герои сегодняшней статьи. Да чего далеко ходить — неоднократно рекомендовал подобные, портативные программы (например, для управление компьютером мышкой (gMote))…
Сегодня расскажу о программе LiberKey . С её помощью научимся хранить весь портативный софт в одном месте. Но это не одна приятность — на сайте производителя программы (на который попадём сразу после установки) есть возможность скачать целые наборы портабельных программ (три варианта присутствует) или выбрать по одной. Есть и список самых новых, последних версий популярных программ в таком же формате.
ПОЛЕЗНОЕ ВИДЕО
Размер инсталлятора 4.4 Мб. Вирусы отсутствуют. Программа работает во всех версиях операционной системы Windows.
Нужно выбрать свою флешку . Посмотрите в «Мой компьютер» под какой буквой она и укажите её через «Обзор». Не заморачиваясь пуляю её просто на диск «С:»…
Можно и не создавать значок …
На рабочем столе появился ярлык программы…
Если не ставили галку — ищем на флешке папку…
…там будет такой же ярлык, нажав который и запустим программу LiberKey.
Кстати, открылся сайт производителя в браузере, заметили? В нём, справа есть колонка с уже готовыми самыми новыми версиями портативных программ…
Кликаем, допустим на CCleaner…
Левую, нижнюю кнопку клац…
Как работает LiberKey
Можно поставить галочку внизу, в квадратике и просто жмём «Ок» …
Таким образом выбираем нужные программы и жмём указанную стрелкой кнопу…
Портативный чистильщик упакован в контейнер. Нужно выбрать программу из списка и кликнуть на неё — запустится на радость нам. Можно пользоваться. Главное — на флешке порядок, нет кучи ярлыков. Хотите узнать, где программы — загляните в…
Настройка программы LiberKey
Кликнув ПРАВОЙ кнопкой мыши на значке LiberKey в трее (возле часиков) можно попасть в её настройки…
Легко разберётся и ребёнок. Теперь вернёмся к сайту производителя (если закрыли — можно зайти на него через меню значка в трее).
Выбрать можно либо три варианта пакетов программ — мал, мала, меньше (список прилагается с количеством и общим размером программ) и нажав синюю кнопку, либо выбрав отдельные программы там же…
…или из каталога…
Как видите список портативных программ огромен и постоянно обновляется — всегда актуальные, самые новые версии к Вашим услугам на сайте LiberKey.
Теперь знаете, что такое портативные программы. До новых полезных компьютерных программ и интересных приложений для Андроид.
Источник: optimakomp.ru
Портирование программ
Портирование — это перенос программного обеспечения (ПО) в новую инфраструктуру, например, на другую ОС, СУБД или в другую инфраструктуру с изменением форматов входных и выходных данных. Портируемость указывает на возможность программы переживать естественные изменения технологий, окружения, производственных циклов и компьютерного оборудования без утраты актуальности, включая накопленный запас данных и знаний.
Когда требуется портирование систем
Портирование ПО необходимо регулярно при смене технологической базы, что случается в большинстве отраслей не реже раза в 10-15 лет. Устаревают программы и операционные системы, появляется новое, более эффективное оборудование, новые технологии улучшают качество работы, и т.д. Эффективное программное обеспечение должно в таких случаях обеспечивать портируемость, чтобы не стать «узким местом» в технологической или управленческой цепочке предприятия.
Примеры ситуаций, требующих портирования программ
- Масштабная замена парка компьютерного оборудования на предприятии на современные модели («апгрейд»);
- Появление принципиально новых систем, модулей или технологий в IT инфраструктуре предприятия (например, внедрение взаимодействия с ФГИС);
- Переход на новый тип или кардинально обновлённую версию СУБД для хранения базы данных предприятия.
Источник: www.novosoft.ru
Портативная версия программы — что такое?
Обычно как? Программа устанавливается в одну папку, например сюда:
C:Program Files (x86)
Это — место, куда ставятся программы. Так задумано уже давно в Windows, уже много лет. Но в папку Program Files ставится только сама программа. А вот настройки она хранит уже в другом месте, например в операционке Windows 10 или Windows 7 это место — папка Roaming, которая расположена по такому пути:
В старушке Windows XP папка настроек хранилась немного в другом месте, а именно:
C:Documents and Settings
PS: с Windows XP могу немного ошибаться, давно уже не пользуюсь ней..
Суть — настройки хранятся в одном месте, а сами файлы программы — в другом. Зачем это сделано? Чтобы настройки были разные у каждого пользователя. Ведь за одним ПК может работать не один человек, а вся семья и у каждого будут не только свои настройки Windows но и свои параметры программ. А сами файлы программ при этом будут общими для всех пользователей. Вот такой экономический подход
Бывает портативная версия ПО скачивается в виде архива (открыть можно архиватором WinRAR):
Некоторый софт при установке предлагает создать портативную версию — в итоге вам нужно будет выбрать папку куда поставится ПО и в этой же папке будут хранится настройки:
Портативная версия программы
Здесь все удобно:
- Все настройки хранятся в одной папке, в которой, в которой и содержится программа.
- При изменении настроек — они сохраняются в папке.
- Такую папку можно закинуть на флешку и подключать ее к разным ПК, при этом настройки не будут теряться. PS: подключая флешку к разным ПК есть риск подцепит вирус и потом его же распространять подключая флешку к другим компам))
- Часто настройки хранятся в ini-файлах, это специальные текстовые файлы созданы именно чтобы хранить в них настройки.
Заключение
- Портативная версия программы — программа, которая хранит настройки в своей папке, откуда и запускается. Такое приложение можно спокойно назвать переносным — можно перемещать из одного диска на другой, на флешку и запускать даже на другом ПК. Все равно все настройки будут сохранены в папке программы.
Надеюсь информация оказалась полезной. Удачи и добра, до новых встреч друзья!
Источник: 990x.top
Принципы переноса ранее разработанных приложений на смартфон
Аннотация: Существует огромное количество приложений, хорошо зарекомендовавших себя на десктопах, но при этом не имеющих мобильных аналогов. Лекция посвящена возможностям переноса уже существующего приложения для работы на смартфоне.
Рассматриваются общие принципы портирования приложений, особенности разработки интерфейсов с учетом возможностей смартфона, особенности портирования ресурсов и сложности, возникающие при переносе приложений на другую платформу. Также приведен обзор программных средств, облегчающих портирование, в котором особое внимание уделяется среде Intel XDK. Для наиболее удобного изучения материала данной темы настоятельно рекомендуется предварительно пройти курс Введение в разработку приложений для ОС Android. Скриншоты приложений взяты из магазина приложений Google Play или сделаны самостоятельно с использованием смартфона Мегафон SP-A20i Mint на платформе Intel Medfield.
Ключевые слова: портирование , мобильное устройство, программные средства, android, Marmalade SDK
Общие принципы портирования приложений
Презентацию к лекции Вы можете скачать здесь.
Портирование приложений
Портирование – адаптация некоторой программы или её части, чтобы она работала в другой среде, отличающейся от той среды, под которую она была изначально написана с максимальным сохранением её пользовательских свойств.
Процесс портирования также называют портированием или переносом, а результат — портом. Но в любом случае главной задачей при портировании является сохранение привычных пользователю интерфейса и приёмов работы с программой. Добавление новых или удаление части имеющихся свойств при портировании программных продуктов не допускается.
Необходимость в портировании возникает обычно из-за различий в системе команд процессора, различий между способами взаимодействия операционной системы и программ (API — Application Program Interface), принципиальных различий в архитектуре вычислительных систем, либо по причине некоторых несовместимостей или даже полного отсутствия используемого языка программирования в целевом окружении.
Международные стандарты значительно упрощают портирование. Они описывают среду исполнения программ таким образом, что различия между платформами становятся минимальными. Часто портирование программ между платформами, реализующими один и тот же стандарт (такой как POSIX.1), сводится к перекомпиляции программы на новой платформе. Существует также всё расширяющийся набор инструментов, облегчающих портирование, например, таких как GCC, предоставляющий неизменный язык программирования на различных платформах.
Некоторые языки программирования высокого уровня достигают портируемости путем трансляции исходного кода в промежуточный язык, имеющий компиляторы для многих процессоров и операционных систем.
Термин портирование часто применяется к компьютерным играм, а именно, к процессу переноса компьютерной игры с первоначальной целевой платформы (персонального компьютера, игровой приставки или мобильного устройства) на другую платформу.
На рис. 7.1 представлен пример портированной программы.
Технические особенности смартфонов, влияющие на работу приложений
При портировании десктопных приложений на смартфон следует учитывать возможности мобильного устройства, отличные от возможностей персонального компьютера. Они оказывают существенное влияние на работоспособность приложений, но при этом у разработчиков появляются новые способы взаимодействия с пользователем.
К особенностям смартфонов, требующим особого внимания при разработке приложений, относятся:
- Ограниченный доступный объем памяти, как оперативной, так и используемой для хранения пользовательских приложений.
- Сравнительно невысокая скорость обработки информации.
- Слабый графический процессор.
- Ограниченный срок работы устройства от батареи.
- Небольшой экран.
С другой стороны, смартфоны обладают возможностями, отличными от традиционных для обычных компьютеров:
- Сенсорный экран. Здесь отличие только от традиционных ноутбуков, десктопов и нетбуков, т.к. планшеты и ультрабуки тоже обладают возможностями сенсорного ввода.
- Наличие датчиков gps, гироскопа, акселерометра и других, позволяющих использовать изменение положения устройства в пространстве.
- Небольшой размер позволяет легко переключаться между горизонтальным и вертикальным расположением экрана в отличие от устройств с физической клавиатурой.
Особенности портирования приложений на мобильные платформы
С одной стороны, основные принципы проектирования для мобильных устройств являются общими для всех платформ. С другой стороны, при разработке приложения под конкретную систему и Android в том числе необходимо учитывать ее особенности.
Разработка мобильного приложения «с нуля» состоит из нескольких важных этапов:
- Постановка задачи.
- Создание прототипа (бумажного или приложения-заглушки).
- Определение системных требований и выбор инструмента.
- Работа над графикой и дизайном приложения и разработка приложения (эти процессы обычно выполняются разными людьми и идут параллельно).
- Тестирование и оптимизация.
- Подготовка и публикация приложения в магазине.
- Сбор аналитики и получение обратной связи.
- Исправление недочетов и выпуск обновлений.
При портировании приложения на Android есть некоторые отличия от описанного процесса. Задача уже поставлена, есть работающий код, который хотелось бы использовать с минимальными изменениями. Готовое приложение нужно будет готовить к публикации и т.д. абсолютно таким же образом. Но на остальных этапах есть значительные отличия:
- Интерфейс, графические элементы и дизайн необходимо продумать на этапе прототипирования и переделать подходящим образом.
- Необходимо выбрать наиболее удобный инструмент разработки.
- При разработке нужно будет подключить работающий код портируемого приложения.
- В процессе тестирования и оптимизации возможны значительные изменения в коде исходного приложения (например, при работе с графикой), к этому надо быть готовым.
При выборе платформы разработки приложения необходимо сначала определиться с ее типом. Существуют три варианта: родная (нативная), Web и гибридная.
Родные (нативные) платформы позволяют создавать приложения, которые замечательно выглядят и воспринимаются, а также обеспечивают сравнительно высокую производительность. Оборотная сторона разработки родных приложений ? для каждой платформы нужно писать свой код. Портирование нативных приложений наиболее сложное.
Мобильные Web-приложения обычно пишут на HTML5, CSS и JavaScript. Их можно написать один раз и запускать на разных платформах, но такие приложения могут уступать родным по внешнему виду, восприятию и производительности. Портирование не представляет особых сложностей.
Гибридные инструменты и среды ликвидируют этот разрыв, сочетая в себе простоту программирования и универсальность Web-приложений с блеском родных приложений. Портирование гибридных приложений зависит от многих факторов, которые могут как упрощать, так и усложнять процесс перехода на другую платформу.
Перед портированием необходимо произвести разделение платформенно-зависимых и платформенно-независимых частей программы. Если при проектировании исходного приложения соблюдался принцип отделения интерфейса от реализации, переделать его под другую платформу будет гораздо проще.
Источник: intuit.ru