Я внедряю сервис и у меня есть класс обертки поверх этой службы, который локально связывается с ним. Теперь, когда я экспортирую услугу как банку и ссылаюсь на нее из другого приложения (это приложение создает создание класса обертки).
Когда я запускаю приложение, я получаю ClassCastException: Android.os.binderProxy не может быть поднят в xxx $ localbinder
, вызванное локальным Bind в классе Wrapper: < /p>
service = ((LocalBinder) binder).getService();
< /code>
Переплет здесь имеет тип BinderProxy вместо LocalBinder и, следовательно, сбой.private final IBinder localBinder = new LocalBinder();
public class LocalBinder extends Binder {
xxxService getService() {
return xxxService.this;
}
}
< /code>
и < /p>
public IBinder onBind( Intent intent ) {
IBinder result = null;
result = localbinder;
return result;
}
< /code>
Тогда в моем классе обертки OnserviceConnected: < /p>
public void onServiceConnected( ComponentName name, IBinder binder) {
xxxService = ((LocalBinder) binder).getService();
< /code>
Наконец -то мой конструктор класса обертки: < /p>
public xxxServiceManager( Context context ) throws Exception {
this.context = context;
xxxServiceManagerIntent = new Intent( "providerAPI" );
xxxServiceManagerIntent.setClassName( "com.yyy", "com.yyy.xxxService" );
context.startService( xxxServiceManagerIntent );
context.bindService( xxxServiceManagerIntent, serviceConnection, Context.BIND_AUTO_CREATE );
< /code>
Затем в основном приложении, которое использует эту JAR, если вы установите имя пакета < /p>
Все работает, но, очевидно, я хочу установить другое имя пакета.
Есть ли каким -либо образом, как перепроектировать или сделать эту работу? < /p>
Спасибо! < /p>
Подробнее здесь: https://stackoverflow.com/questions/357 ... o-xxxlocal
Java.lang.classcastexception: android.os.binderproxy не может быть поднят в xxx $ localbinder ⇐ Android
Форум для тех, кто программирует под Android
1753800907
Anonymous
Я внедряю сервис и у меня есть класс обертки поверх этой службы, который локально связывается с ним. Теперь, когда я экспортирую услугу как банку и ссылаюсь на нее из другого приложения (это приложение создает создание класса обертки).
Когда я запускаю приложение, я получаю ClassCastException: Android.os.binderProxy не может быть поднят в xxx $ localbinder
, вызванное локальным Bind в классе Wrapper: < /p>
service = ((LocalBinder) binder).getService();
< /code>
Переплет здесь имеет тип BinderProxy вместо LocalBinder и, следовательно, сбой.private final IBinder localBinder = new LocalBinder();
public class LocalBinder extends Binder {
xxxService getService() {
return xxxService.this;
}
}
< /code>
и < /p>
public IBinder onBind( Intent intent ) {
IBinder result = null;
result = localbinder;
return result;
}
< /code>
Тогда в моем классе обертки OnserviceConnected: < /p>
public void onServiceConnected( ComponentName name, IBinder binder) {
xxxService = ((LocalBinder) binder).getService();
< /code>
Наконец -то мой конструктор класса обертки: < /p>
public xxxServiceManager( Context context ) throws Exception {
this.context = context;
xxxServiceManagerIntent = new Intent( "providerAPI" );
xxxServiceManagerIntent.setClassName( "com.yyy", "com.yyy.xxxService" );
context.startService( xxxServiceManagerIntent );
context.bindService( xxxServiceManagerIntent, serviceConnection, Context.BIND_AUTO_CREATE );
< /code>
Затем в основном приложении, которое использует эту JAR, если вы установите имя пакета < /p>
Все работает, но, очевидно, я хочу установить другое имя пакета.
Есть ли каким -либо образом, как перепроектировать или сделать эту работу? < /p>
Спасибо! < /p>
Подробнее здесь: [url]https://stackoverflow.com/questions/35751983/java-lang-classcastexception-android-os-binderproxy-cannot-be-cast-to-xxxlocal[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия