본문 바로가기

Android

(59)
v 1.18.1 업데이트 - 오류 수정 2달 만의 업데이트입니다.문제를 알고 있으면서도 놔둔 것이 많은 사용자들이 앱을 지우는 원인이 된 것 같습니다.진작 오류를 해결하지 못한 것을 후회하며.... 늦었지만 업데이트 완료하였습니다. 수정 내용- 추가화면에서 오른쪽 버튼 선택하여 `좌석현황`을 선택할 경우 오류로 앱이 종료- 추가화면에서 오른쪽 버튼 선택시 `나의 도서관 추가` , `나의 도서관 삭제` 메뉴 추가- 업데이트 이력, 개발자 정보 수정- `나의 도서관` 화면에서 back키 누르면 앱을 강제 종료 시키던 것을 정상 종료 시키도록 변경
BroadcastReceiver BroadcastReceiver 예제입니다. 앱이 추가되고 삭제될때 receive 하는 예제입니다. package com.yhg.sample; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; public class PackageReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent itt) { String packageName = itt.getData().getSchemeSpecificPart(); String a..
RefBase.h:350: error: 'android::IBinder' is an inaccessible base of SensorService 를 흉내낸 간단한 PSensorService를 만들려고 간단한 코드를 입력하고 틀만 만들었습니다. System_init.cpp 의 system_init() 에서 PSensorService::instantiate(); 를 추가하여 서비스를 시작하도록 하였습니다. 컴파일 도중 오류가 발생했습니다. RefBase.h:350: error: 'android::IBinder' is an inaccessible base of 이 오류였는데... 구글에 검색해 봐도 답이 안 보였습니다. 결론은 SensorServer를 만들어 상속을 받는데 public을 안 써줘서 접근을 못하는 것이었습니다. 상속받을 때 접근자를 항상 주의하도록 합시다!!!
새로운 구조로 새로운 작업 예정??? 우연히 동기의 질문에 오랫만에 다시 YHGCommunication 과 관련된 글을 확인하게 되었습니다. 잘 모르고 빨리 만들다 보니 허접한 코드가 되어 버렸습니다. 이벤트 방식의 메세지 처리, 객체 직렬화 메세지 전송 등 비 효율적인 면이 많이 있었습니다. 이 부분을 좀 더 수정해서 새로운 버전의 YHGComm 을 새로 만들까 하는 욕심이 생깁니다. 주요 수정 사항 1. 받은 메세지 처리 방식 수정 2. 전송되는 메세지 구조 수정 3. 서버에서 다양한 사용자 정보를 관리 4. 사용자 고유 번호 할당 5. Android 에서 UI thread 오류 없이 쉽게 동작 기대 효과 1. 많은 수의 메세지 클래스가 줄어듬 2. 조금 더 효율적인 전송 메세지 크기 3. 서버의 확장성 4. 타 플랫폼(Android)와..
대기자수 표시 작업중 위의 이미지는 현재 작동중인 앱을 캡쳐한 이미지입니다. 보시는 것과 같이 기본적으로 2가지 형태로 대기자 정보가 표시됩니다. 1. 전체 열람실 대기자 2. 열람실별 대기자 3. 청소년, 성인 대기자 (작업 예정) 4. 기타 도서관을 차례대로 하나씩 늘려 갈 예정입니다. 특별한 형태의 폼을 가지고 있는 도서관은 늦어 질수 밖에 없습니다. 되도록이면 많은 도서관이 함께 사용하는 폼을 먼저 작업하려 합니다. 이용시간, 휴관일 정보는 데이터는 들어 있지만... 자료검증을 다시 해야 하는가... 에 대한 고민에 빠져 있습니다. 결정나는데로 바로 작업 하도록 하겠습니다.
init.c main에서 ueventd_main 실행 ??? if (!strcmp(basename(argv[0]), "ueventd")) return ueventd_main(argc, argv); init.c 의 main 함수를 보면 ueventd_main 을 실행하는 부분이 있습니다. 책에서도 먼저 실행된다고 되어 있습니다. 하지만 아무리 생각해 봐도 argv[0] 은 파일명인데... 어떻게 이게 다른 파일인 "ueventd" 가 될수 있는 걸까요? 파일명이 차이가 나는 이유는 ueventd가 init의 심볼릭링크라서 그렇다는 군요. 그리고 init보다 ueventd가 먼저 실행되는 이유는 이 코드가 아닌 전혀 다른 곳에 있었습니다. init.rc 파일을 보면 다음과 같이 있습니다. on early-init start ueventd ..... init이 시작될때..
ListView 두가지 이벤트의 차이 onItemClickListener, onItemSelectedListener 정확하게는 아니지만... 다른 분들의 의견과 저의 의견을 종합하여 내린 결론! onItemClickListener 은 말 그대로 터치하여 클릭되었을 경우 발생하는 이벤트입니다. down -> up 이 되어야 발생합니다. onItemSelectedListener 은 방향키나 트랙볼등으로 이동하였을 경우 포커스를 가지게 될때 발생하는 이벤트입니다.
AVD 경로 변경 제어판 > 시스템 > 고급 > 환경변수 > 시스템변수 변수 이름 : ANDROID_SDK_HOME 변수 값 : D:\android-sdk-windows 이클립스가 켜 있는 상태라면 종료하고 다시 실행하셔야 합니다.