Copyroid

Android: как установить два одинаковых приложения на один телефон

Стол заказов — в конце статьи.

Для установки двух (или больше) одинаковых приложений на один телефон нужно сменить значение package в файле AndroidManifest.xml, находящемся внутри apk-билда.
Например, имеем:

<manifest
android:versioncode="20110420"
android:versionname="1.8.0"
package="ru.e_num"
xmlns:android="http://schemas.android.com/apk/res/android">

Для того, чтобы установить это приложение ещё раз, нужно сделать примерно следующее:

<manifest
android:versioncode="20110420"
android:versionname="1.8.0"
package="ru.e_num.test"
xmlns:android="http://schemas.android.com/apk/res/android">

После такого изменения заново собранный apk-файл придётся подписать сертификатом. Информацию о том, как распаковывать, запаковывать и подписывать apk-файлы, можно найти в любом поисковике по запросу SmartApkTool. Вот ссылка на приложение: v.2.2 (распакуйте содержимое архива в пустую директорию). А вот более правильный способ работы с apk-файлами: Использование apktool.

Совет. Устанавливайте одну из копий неизменённой, чтобы знать об обновлениях в Маркете.

Под катом описаны некоторые встречающиеся проблемы, а также находится Стол Заказов.

ВОЗМОЖНЫЕ ПРОБЛЕМЫ

Проблема 1

Если рядом с AndroidManifest.xml не создаётся файл apktool.yml, то в домашней директории пользователя найдите папку apktool\framework и удалите из неё файл 1.apk. (Совет с 4pda.ru, спасибо Alex Boroda.)

Проблема 2

Иногда обычная смена имени package не помогает. Чаще всего это бывает в случаях, когда в файле AndroidManifest.xml прописаны относительные пути к различным активити. Например:

<activity
android:label="E-NUM"
android:name=".SplashScreenActivity"
android:screenOrientation="portrait">

В такой ситуации нужно прописать полный путь ко всем активити, то есть:

<activity
android:label="E-NUM"
android:name="ru.e_num.SplashScreenActivity"
android:screenOrientation="portrait">

Обратите внимание, что прописывать нужно не новое имя package (то есть в нашем случае не ru.e_num.test), а реальный путь к активити в директории smali распакованного apk-файла. Естественно, в общем случае путь совпадает со старым именем package (в нашем случае это ru.e_num).

Проблема 3

Если в файле AndroidManifest.xml есть тег provider, то в его атрибуте authorities нужно также дописать символы, которые мы использовали в качестве дополнения к параметру package (в нашем случае это .test). Например, было:

<provider
android:authorities="com.someapp.android"
android:name="com.someapp.android">

Стало:

<provider
android:authorities="com.someapp.android.test"
android:name="com.someapp.android">

Как и в проблеме 2, значение атрибута name менять не надо.

Стол заказов

Я снова принимаю заказы! Если вы прочитали инструкцию, но у вас с ней возникли какие-то сложности, пишите в комментариях ссылку на приложение. Это обязательно! Искать «вайбер» или «клаш оф кланс» я не буду. Одну копию я делаю бесплатно. Результат не гарантирую — тестируйте. Если нужно больше копий, или есть какие-либо нестандартные пожелания — пишите в обратку, договоримся. Если хотите отблагодарить пинтой пива и за одну копию, то кошельки здесь.

PS. Пользователи *NIX-систем могут попробовать сделать копии приложений автоматически с помощью этого несложного bash-скрипта:
https://github.com/kodopik/Copyroid
Пулл-реквесты приветствуются!

2 009 thoughts on “Android: как установить два одинаковых приложения на один телефон”

    1. Получилось решить вопрос с помощью приложения
      App Cloner FULL. Поищите на 4pda.
      Телефон Xiaomi Redme 3s

    2. Здравствуйте. О программе App Cloner я знаю и писал о ней вот в этой статье:
      http://kodopik.ru/2016-07-21/sozdanie-klona-igry-ili-prilozheniya-dlya-android/

      Что касается копии, сделанной вручную, то у меня всё получилось. Можете убедиться:
      https://yadi.sk/d/tFlvF5wGuqcpc

      Чтобы выяснить, что именно не получилось у Вас, мне нужно установить Вашу копию и посмотреть логи. Пришлите, если Вам этот вопрос ещё интересен.

    1. спасибо работает, подскажите что меняли?

    2. Уже не помню, к сожалению, но Вы можете прислать ту копию, которую сделали Вы — я установлю и посмотрю, что было не правильно.

    1. спасибо огромное, понял свою ошибку, нужно было не только имя менять (com.ua.mariupol) но и ввиде путей (com/ua/mariupol)

      Можно дополнительный вопрос?)

      Если вы устанавливали приложение, то меню слева выводится по пунктам , которые прописаны так:

      Новости
      Предприятия
      Афиша
      Досуг
      Шоппинг
      Справочная
      Фотоотчеты
      Авто
      Объявления
      Работа
      Погода

      если я удаляю к примеру Работа, при выборе «Погоды» в приложении я перехожу в работу, т.е. они как бы по номерам идут и сохраняется привязанность, вы не могли бы сказать где это можно понять, с меня на пиво)

    2. Нет, достаточно только имя. Я меняю пути, потому что делаю с помощью написанного мною скрипта, а в нём проще было реализовать именно так. Единственное, про что нельзя забывать при изменении только одноно имени package — это перечисленные в статье проблемы №2 и №3.

      А на дополнительный вопрос я ответить не могу: тут всё зависит от того, как разработчик резализовал работу со списком. Это нужно смотреть в исходных кодах самой программы, а не в служебных XML-файлах, которые обычно меняются при изготовлении клона.

    1. почему то при запуске приложения — оно вылетает.
      Мне не имеет значения какой версии будет приложение, мне главное сделать копию, которая будет исправно работать) Если у вас это получится — готов сделать заказ… Где с вами можно пообщаться лично?

    2. что то от вас ни ответа, ни привета…

    3. Если мне не изменяет память, мы с Вами по почте общались. Если это были не Вы, пожалуйста, напишите ещё раз. Возможно, письмо упало в спам. Вот здесь можно написать на почту: http://kodopik.ru/mailtome/

    4. Видимо вы меня спутали с кем то другим. Еще раз написал вам на почту, жду ответа

    5. Не вижу никаких сообщений на тему клонирования приложений. Куда-то Вы не туда пишете, наверное :) Попробуйте написать мне в Telegram на @kodopik

      А пока прилагаю версию, которая, вроде как, работает:
      https://yadi.sk/d/CCpaylBeie2Hp

  1. Помогите пожалуйста сделать клон Whatsapp. Если реально в 3 экземплярах. Нужно чтоб на смартфоне по мимо оригинала стояли еще 3 шт.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *