Невозможно привязать/подключиться к удаленной службе, созданной как часть библиотеки AAR.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Гость
 Невозможно привязать/подключиться к удаленной службе, созданной как часть библиотеки AAR.

Сообщение Гость »


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

Из файлов журналов я вижу следующую ошибку:

D/ActivityManager: связываниеService callerProcessName:com.something.services.dummyproject, calleePkgName: com.something.services.dummyproject, действие: com.something.services.dummyservice.IDummyService W/ActivityManager: невозможно запустить службу. Намерение { act=com.something.services.dummyservice.IDummyService cmp=com.something.services.dummyproject/com.something.services.dummyservice.IDummyService } U=0: не найдено D/ActivityManager: связываниеService CallerProcessName: com.something.services.dummyproject, calleePkgName: com.something.services.dummyservice.service, действие: ноль W/ActivityManager: невозможно запустить службу. Намерение { cmp=com.something.services.dummyservice.service/.DummyService } U=0: не найдено Файл DummyService.java выглядит следующим образом:

пакет com.something.services.dummyservice.services; импортировать android.app.Service; импортировать android.content.Intent; импортировать android.os.IBinder; импортировать android.os.RemoteException; импортировать android.util.Log; импортировать com.something.services.dummyservice.IDummyService; общественный класс DummyService расширяет службу { @Override public int onStartCommand (Намерение, int flags, int startId) { вернуть START_STICKY; } @Override public IBinder onBind (Намерение) { вернуть mBinder; } частный окончательный IDummyService.Stub mBinder = новый IDummyService.Stub() { @Override public String dummyHello() выдает RemoteException { вернуть «Привет»; } @Override public void exit() выдает RemoteException { стопСамость(); } }; } Манифест DummyService выглядит следующим образом:

Файл IDummyService.aidl выглядит следующим образом:

// IDummyService.aidl пакет com.something.services.dummyservice; // Объявляем здесь любые типы, отличные от значений по умолчанию, с помощью операторов импорта интерфейс IDummyService { Строка dummyHello(); недействительный выход(); } Я создаю файл .aar с учетом вышеизложенного.

Затем я включил эту библиотеку в основной файл проекта.

В моем основном проекте манифест выглядит следующим образом:

Файл MainActivity.java выглядит следующим образом:

пакет com.something.services.dummyproject; импортировать android.content.ComponentName; импортировать android.content.Context; импортировать android.content.Intent; импортировать android.content.ServiceConnection; импортировать android.os.IBinder; импортировать android.os.RemoteException; импортировать android.support.v7.app.AppCompatActivity; импортировать android.os.Bundle; импортировать android.view.View; импортировать android.widget.Button; импортировать android.widget.EditText; импортировать android.widget.Toast; импортировать com.something.services.dummyservice.IDummyService; импортный нож для масла.Связывание; импорт сливочного ножа.ButterKnife; публичный класс MainActivity расширяет AppCompatActivity { частный IDummyService mDummyService; @Bind(R.id.btnStartService) Кнопка btnStartService; @Bind(R.id.btnEndService) Кнопка btnEndService; @Override protected void onCreate (Bundle saveInstanceState) { super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(это); btnStartService.setOnClickListener(startServiceOnClickListener); btnEndService.setOnClickListener(endServiceOnClickListener); } частный ServiceConnection mConnection = новый ServiceConnection () { @Override public void onServiceConnected (ComponentName className, служба IBinder) { mDummyService = IDummyService.Stub.asInterface(сервис); манекенПривет(); } @Override public void onServiceDisconnected (ComponentName className) { мDummyService = ноль; } }; частный окончательный View.OnClickListener startServiceOnClickListener = новый View.OnClickListener() { @Override public void onClick (окончательный просмотр CompleteButton) { Намерение намерение = новое намерение(MainActivity.this, com.something.services.dummyservice.IDummyService.class); Intent.setAction(IDummyService.class.getName()); BindService (намерение, mConnection, Context.BIND_AUTO_CREATE); } }; частный окончательный View.OnClickListener endServiceOnClickListener = новый View.OnClickListener() { @Override public void onClick (окончательный просмотр CompleteButton) { выходСервис(); } }; частная пустота dummyHello() { пытаться { Строковый ответ = mDummyService.dummyHello(); Toast.makeText(getApplicationContext(), ответ, Toast.LENGTH_LONG); } catch (RemoteException e) { е.printStackTrace(); } } частный недействительный выходService() { пытаться { если (mDummyService != ноль) { мDummyService.exit(); } } catch (RemoteException e) { е.printStackTrace(); } } } DummyProject также содержит точно такой же файл AIDL. В обоих случаях файл AIDL находится в папке helpl, которая находится рядом с папкой src\JAVA. Он содержит папку пакета, содержащую файл AIDL.

Будем очень признательны за любую помощь в определении причины, по которой я не могу подключиться к службе!
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Упакуйте один aar из нескольких aar с помощью com.github.kezong:fat-aar:1.3.8.
    Гость » » в форуме Android
    0 Ответы
    106 Просмотры
    Последнее сообщение Гость
  • Интегрируйте библиотеку внутри библиотеки как .aar в .aar
    Anonymous » » в форуме Android
    0 Ответы
    64 Просмотры
    Последнее сообщение Anonymous
  • Ошибка TCP (10060) при попытке подключиться к удаленной службе WCF
    Anonymous » » в форуме C#
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Адаптер привязки не работает для подмодулей в AAR (с использованием плагина fat-aar)
    Anonymous » » в форуме Android
    0 Ответы
    46 Просмотры
    Последнее сообщение Anonymous
  • Прямые зависимости от локальных файлов .aar не поддерживаются при создании AAR. Сборка релиза Android
    Anonymous » » в форуме Android
    0 Ответы
    41 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»