바인더 클래스를 확장하여 서비스를 묶는 데 도움이 필요합니다. 2 개의 APK가 있습니다. 첫 번째 서비스는 하나의 서비스를 선언하고 두 번째 APK의 활동에서 바인딩하고 싶습니다. 두 APK는 동일한 sharedUserId와 동일한 android : 프로세스를 사용합니다. 그들은 동일한 프로세스에서 실행 중이므로 IPC 통신에 AIDL을 사용하고 싶지 않
내 기본 작업은 안드로이드에 네이티브 서비스를 생성하고 그것을 테스트하기위한 간단한 네이티브 프로그램을 작성하는 것이다. 두 정수의 합계를 반환하는 간단한 서비스를 작성하려고한다고 가정 해 보겠습니다. 나는 프로그램에서 그것에 말하기 위하여 바인더를 사용해야한다, 나는 주변에 google에 시도했다 그러나 나는 정밀한보기를 발견한다. 네이티브 서비스를 만들
onCreate() (onCreate가 처음 호출 된 경우)에서 서비스를 시작하고 onStart()에서 bindService를 호출합니다. 이 서비스는 잘 작동하지만 bindService를 호출 한 후에 서비스의 로컬 인스턴스가 여전히 null입니다. 또한 getService()가 호출되지 않는 것 같습니다. @Override
protected void
Cursor window could not be created from binder을 확인했습니다. 그것의 거의 700, 전화 번호부에서 연락처를 가져 오는 동안 I 메모리의 문제를 얻고는, 아래 내 코드와 나는 OS 4+ Cursor cursor =managedQuery(ContactsContract.Contacts.CONTENT_URI,
new
개인 안드로이드 바인더 API (IWindowManager)를 사용하는 Android 서비스가 있습니다. 이것을 Android 플랫폼 소스 코드의 일부로 빌드하고 장치 (Uboot 액세스 등)에 설치하면 정상적으로 작동합니다. GIT가 마음에 들지 않아 GIT 외부의 서비스를 다른 버전 컨트롤로 옮겼습니다. 안드로이드 소스에 액세스 할 수 없지만 Andro
"강한 포인터"와 "약한 포인터"라는 개념과 혼동됩니다. Diane Hackborn 자신이 다음과 같이 말했습니다. 강한 포인터가있는 동안 개체가 계속 남아 있습니다. 마지막 하나가 해제되면 이 파괴됩니다. weak 포인터 포인터로 수행 할 수있는 것은 비교이며 강력한 포인터로 승격을 시도하는 것입니다. 개체에 다른 강력한 포인터가 없으면 후자가 실패합니다
IServiceManager.cpp 파일에는 BnServiceManager::onTransact 기능 정의가 있습니다. 그 함수 내부 는 전화가에 " addService", " listServices"등 내가 (IServiceManager에서 선언 된) 그 기능의 구현을 찾을 수 없습니다. 누군가 제게 BnServiceManager의 구현 위치를 알려주십시
다른 프로세스에있는 바인더 서비스와 클라이언트가 있습니다. AIDL을 사용하면 클라이언트가 원격 바인더 서비스를 호출 할 때 오류 (예외)를 클라이언트에 다시 전달해야 할 때가 있습니다. 그러나 내 이해에서 이것은 불가능합니다. 내 바인더 서비스에서 "RemoteException"을 던져서 무슨 일이 일어나는지 보려고 시도했다. 잡히지 않은 원격 예외! (