Запуск одной программы из другой

Ответить
Vasyabest
Сообщения: 6
Зарегистрирован: 17 июл 2015, 10:46

Запуск одной программы из другой

Сообщение Vasyabest » 11 авг 2015, 11:58

Добрый день! Есть готовый работающий проект SMMS, к которому прикручена еще 1 библиотека. И есть программка HelloWorld.
Нужно, сделать из SMMS проекта библиотеку, и запустить проект через HelloWorld.
В свойствах проекта HelloWorld прикрутил, (предварительно отмеченный, как библиотека) проект SMMS и открутил, appcompat_v7, т.к. уже используется в SMMS.
Дальше при попытке запуска приложения, выдает такой набор ошибок
[2015-08-10 17:24:27 - DemoApp] Dx
trouble writing output: already prepared
[2015-08-10 17:24:27 - Dex Loader] Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;
[2015-08-10 17:24:27 - DemoApp] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;

В коде ничего не менял, однако нужно, чтобы активити проекта SMMS перекрывал активити проекта HelloWorld, ну то есть снести активити HelloWorld и интегрировать SMMS.
Как решить проблему? Что в принципе в данной ситуации необходимо менять? Конкретно, при такого рода внедрении, манифест файлы остаются свои или сливаются? Активити мэйны остаются свои или сливаются? Java-файлы переносятся в пакет-пустышку или остаются на месте?
Прошу помочь знающих людей

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Запуск одной программы из другой

Сообщение Mykola » 11 авг 2015, 13:27

у тебя support дублируется Multiple dex files define Landroid/support/v7/appcompat/R$anim;

Vasyabest
Сообщения: 6
Зарегистрирован: 17 июл 2015, 10:46

Re: Запуск одной программы из другой

Сообщение Vasyabest » 11 авг 2015, 14:44

Mykola писал(а):у тебя support дублируется Multiple dex files define Landroid/support/v7/appcompat/R$anim;
Это я понимаю, а как избавиться от этого?

Vasyabest
Сообщения: 6
Зарегистрирован: 17 июл 2015, 10:46

Re: Запуск одной программы из другой

Сообщение Vasyabest » 11 авг 2015, 17:41

Я так понимаю, что где-то нужно отключить создание R.java в HelloWorld, потому что создается и там и там и на это ругается. Но не знаю как это сделать, еще не разбираюсь совсем

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Запуск одной программы из другой

Сообщение Mykola » 14 авг 2015, 17:32

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

Vasyabest
Сообщения: 6
Зарегистрирован: 17 июл 2015, 10:46

Re: Запуск одной программы из другой

Сообщение Vasyabest » 17 авг 2015, 10:01

Mykola писал(а):попробуй поставить одинаковую версию сапорт библиотеки
Поставил. не помогло. :D

Vasyabest
Сообщения: 6
Зарегистрирован: 17 июл 2015, 10:46

Re: Запуск одной программы из другой

Сообщение Vasyabest » 17 авг 2015, 13:10

в 100 раз проще пример. создал два стандартных проекта HelloWorld и HelloApp. В HelloApp изменил слово Hello World на Second Page! Сделал проект библиотекой, подключил его к HelloWorld. Запускаю HelloWorld и хочу увидеть Second Page.
Как вы поняли, выдает ту же самую ошибку [2015-08-17 13:06:19 - Dex Loader] Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;
[2015-08-17 13:06:19 - DemoApp] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Landroid/support/v7/appcompat/R$anim;
что с этим можно сделать?

Ответить