구글은 모바일과 데스크탑 그리고 그 외 다양한 디바이스들을 아우르는 하나의 일관된 디자인 가이드라인을 공개하였습니다. 바로 머티리얼 디자인 (material design) 입니다. 머티리얼 디자인은 질감이 느껴지는 표면 (tactile surfaces) 과 대담하고 선명한 그래픽 디자인 (bold graphic design), 그리고 아름답고 직관적인 사용자 경험을 위한 자연스러운 애니메이션을 특징으로 합니다.
머티리얼 디자인에서 표면과 그림자는 물리적인 구조를 형성하여, 사용자들이 화면 상의 어떤 부분을 터치할 수 있고 움직일 수 있는지 쉽게 이해할 수 있도록 돕습니다. 현대적인 출판물 디자인 원칙이 반영되어 다른 부가 요소보다 컨텐츠 자체가 강조됩니다. 모든 움직임에는 의미가 있으며, 화면 요소들 간의 관계를 명확히 하고 세세한 디테일을 통해 사용자에게 이러한 관계를 알려 쥡니다.
갤럭시 넥서스를 사용하는 사용자로서, Google Hangout(구글 행아웃)을 사용하다 SMS/MMS를 사용할수 있다는 소식을 들었습니다
2013년 11월 19일 화요일 아침경
Google Hangout의 설정에서 "SMS사용"을 체크합니다.
이후 SMS가 안온다는 걸 느꼈습니다.
카드로 물건을 결제하면 바로 휴대폰으로 SMS와 푸시 알림 모두 오는데, 구글 행아웃에 SMS사용한 이후엔 휴대폰에선 푸시알림만 오고, SMS 가 오지 않음을 발견
2013년 11월 20일 수요일
역시 마찬가지. SMS가 안오니 뭔가 이상함을 느낌.
새로 나온 외환카드 앱에서 푸시알림 등록하기 위해서 SMS사용 인증을 해야하는데, SMS가 오지 않으니 당황함.
2013년 11월 21일 목요일
원인이 구글 행아웃의 설정에서 "SMS사용"를 선택한 것이라 생각하고, 구글 행아웃의 설정에서 "SMS사용" 선택을 제외 했음.
결국에 SMS 안오는 원인은 구글 행아웃 설정에서 "SMS사용" 이였음 ㅡㅡ;;
구글에서 메신저, SMS/MMS, 화상전화를 통합한 "행아웃"을 내놓았는데 이게 제대로 통합이 안되는 것 같다는 느낌이 듦.
3일동안 SMS를 못받았으니 중요한 SMS들이 누락되어 놓쳤을 것 같은 기분이랄까?
어디 증권사나, 은행, 카드사의 문자를 바로바로 확인하는 습관이 있는지라 3일동안 답답하였음
그래도 요즘 증권, 은행, 카드사 스마트폰용 앱에 푸시 알림이 있기 때문에 SMS수신이 안되어도 정말 큰 지장까진 아니라도 SMS를 대체할수 있구나를 느낌.
그러나 푸시알림의 경우는 서버에서 메시지 전송을 해도 클라이언트가 제대로 못받는 이슈가 있기 때문에, 확실하게 클라이언트에게 전송을 하는 SMS도 꼭 필요하다는 걸 이번 사건으로 느낌.
우리은행에서 드디어, 기업은행, 신한은행, 씨티은행에서 시행하고 있는, 스마트폰에서 입출금내역을 알려주는 스마트폰 알림 서비스앱을 "원터치 알림(PUSH)"라는 이름으로 2013년 10월 18일 금요일부터 시작하였다고 합니다.
참고로 아이폰(OS 5.0이상), 안드로이드 (OS 2.2이상)에서 가능하다고 합니다.
우리은행 스마트폰 알림 서비스 앱의 경우는 다른 은행(기업은행, 신한은행, 씨티은행)과 다르게 앱에서 계좌 등록을 할수 없는 단점이 있습니다.
우리은행 인터넷뱅킹이나 우리은행 상담창구에서 계좌마다 직접 "원터치 알림 서비스"를 먼저 신청을 해야하며, 신청을 한 후에야 앱에서 정보 등록후 입출금통장의 입출금내역 알림을 받을 수 있다고 합니다.
다른 은행(기업은행, 신한은행, 씨티은행)의 경우는 알림 서비스를 먼저 신청하지 않고, 앱에서 바로 신청하면 바로 통장의 입출금 내역(입출금통장 및, 정기성통장인 정기예금 및 정기적금, 펀드)을 알수 있습니다. 그러나 우리은행 원터치 알림 앱의 경우는 입출금통장의 입출금내역만 통지 가능하다는 단점이 있습니다.
그러나 SMS비용 안내고 스마트폰 푸쉬 알림 서비스로 우리은행의 입출금통장의 입출금 내역을 알려주는 앱이 나온것만 해도 좋군요!
입출금 내역을 스마트폰에서 알림 앱때문에 기업은행과 신한은행을 주로 사용하자, 이제 우리은행에서도 스마트폰 알림(푸쉬) 서비스앱이 나왔으니, 우리은행 다시 열심히 사용해야겠습니다
원래 Arm기반CPU에 탑재되는 Android OS를 X86기반의 CPU에도 작동할수 있게 포팅하는 프로젝트인 Android-x86 프로젝트 사이트(http://www.android-x86.org/)에서 x86기반의 안드로이드 소스(여기서는 Gingerbread)를 받고 난 후 빌드 하였다
make iso_img TARGET_PRODUCT=generic_x86
빌드후에 에러 나는 점을 검색해서 문제 해결한 부분 링크를 붙였다.
결국 빌드는 완료했고 kvm위에서 실행해보았으나 원하는 시험 결과가 나오지 않아 실망했음.
dalvik/vm/native/dalvik_system_Zygote.cpp: In function 'int setrlimitsFromArray(ArrayObject*)': dalvik/vm/native/dalvik_system_Zygote.cpp:194: error: aggregate 'rlimit rlim' has incomplete type and cannot be defined dalvik/vm/native/dalvik_system_Zygote.cpp:217: error: 'setrlimit' was not declared in this scope make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libdvm_intermediates/native/dalvik_system_Zygote.o] Error 1 make: *** Waiting for unfinished jobs....
CC arch/x86/kernel/ptrace.o /home/dhsung/android-x86/kernel/arch/x86/kernel/ptrace.c:1366:17: error: conflicting types for ‘syscall_trace_enter’ In file included from /home/dhsung/android-x86/kernel/arch/x86/include/asm/vm86.h:130:0, from /home/dhsung/android-x86/kernel/arch/x86/include/asm/processor.h:10, from /home/dhsung/android-x86/kernel/arch/x86/include/asm/thread_info.h:22, from /home/dhsung/android-x86/kernel/include/linux/thread_info.h:53, from /home/dhsung/android-x86/kernel/include/linux/preempt.h:9, from /home/dhsung/android-x86/kernel/include/linux/spinlock.h:50, from /home/dhsung/android-x86/kernel/include/linux/seqlock.h:29, from /home/dhsung/android-x86/kernel/include/linux/time.h:8, from /home/dhsung/android-x86/kernel/include/linux/timex.h:56, from /home/dhsung/android-x86/kernel/include/linux/sched.h:57, from /home/dhsung/android-x86/kernel/arch/x86/kernel/ptrace.c:8: /home/dhsung/android-x86/kernel/arch/x86/include/asm/ptrace.h:146:13: note: previous declaration of ‘syscall_trace_enter’ was here /home/dhsung/android-x86/kernel/arch/x86/kernel/ptrace.c:1411:17: error: conflicting types for ‘syscall_trace_leave’ In file included from /home/dhsung/android-x86/kernel/arch/x86/include/asm/vm86.h:130:0, from /home/dhsung/android-x86/kernel/arch/x86/include/asm/processor.h:10, from /home/dhsung/android-x86/kernel/arch/x86/include/asm/thread_info.h:22, from /home/dhsung/android-x86/kernel/include/linux/thread_info.h:53, from /home/dhsung/android-x86/kernel/include/linux/preempt.h:9, from /home/dhsung/android-x86/kernel/include/linux/spinlock.h:50, from /home/dhsung/android-x86/kernel/include/linux/seqlock.h:29, from /home/dhsung/android-x86/kernel/include/linux/time.h:8, from /home/dhsung/android-x86/kernel/include/linux/timex.h:56, from /home/dhsung/android-x86/kernel/include/linux/sched.h:57, from /home/dhsung/android-x86/kernel/arch/x86/kernel/ptrace.c:8: /home/dhsung/android-x86/kernel/arch/x86/include/asm/ptrace.h:147:13: note: previous declaration of ‘syscall_trace_leave’ was here make[4]: *** [arch/x86/kernel/ptrace.o] 오류 1 make[3]: *** [arch/x86/kernel] 오류 2 make[2]: *** [arch/x86] 오류 2 make[1]: *** [sub-make] 오류 2 make[1]: Leaving directory `/home/dhsung/android-x86/kernel' make: *** [out/target/product/generic_x86/kernel] 오류 2
external/srec/tools/grxmlcompile/grxmlcompile.cpp:938:1: required from here external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:132:9: error: ‘SetState’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:132:9: note: declarations in dependent base ‘fst::VectorFstBaseImpl<fst::CacheState<fst::GallicArc<fst::StdArc, (fst::StringType)0u> > >’ are not found by unqualified lookup external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:132:9: note: use ‘this->SetState’ instead external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:136:11: error: ‘SetState’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:136:11: note: declarations in dependent base ‘fst::VectorFstBaseImpl<fst::CacheState<fst::GallicArc<fst::StdArc, (fst::StringType)0u> > >’ are not found by unqualified lookup external/srec/tools/thirdparty/OpenFst/fst/lib/cache.h:136:11: note: use ‘this->SetState’ instead make: *** [out/host/linux-x86/obj/EXECUTABLES/grxmlcompile_intermediates/grxmlcompile.o] 오류 1
frameworks/base/tools/aapt/AaptAssets.cpp:1386:41: required from here frameworks/base/include/utils/KeyedVector.h:193:31: error: ‘indexOfKey’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] frameworks/base/include/utils/KeyedVector.h:193:31: note: declarations in dependent base ‘android::KeyedVector<android::String8, android::sp<AaptGroup> >’ are not found by unqualified lookup frameworks/base/include/utils/KeyedVector.h:193:31: note: use ‘this->indexOfKey’ instead frameworks/base/include/utils/KeyedVector.h: In instantiation of ‘const VALUE& android::DefaultKeyedVector<KEY, VALUE>::valueFor(const KEY&) const [with KEY = android::String8; VALUE = android::sp<AaptDir>]’: frameworks/base/tools/aapt/AaptAssets.cpp:1445:53: required from here frameworks/base/include/utils/KeyedVector.h:193:31: error: ‘indexOfKey’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] frameworks/base/include/utils/KeyedVector.h:193:31: note: declarations in dependent base ‘android::KeyedVector<android::String8, android::sp<AaptDir> >’ are not found by unqualified lookup frameworks/base/include/utils/KeyedVector.h:193:31: note: use ‘this->indexOfKey’ instead make: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/AaptAssets.o] 오류 1
In file included from dalvik/vm/Dalvik.h:87:0, from dalvik/vm/native/dalvik_system_Zygote.c:20: dalvik/vm/oo/ObjectInlines.h: In function ‘dvmSetObjectArrayElement’: dalvik/vm/oo/ObjectInlines.h:29:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] dalvik/vm/native/dalvik_system_Zygote.c: In function ‘setgroupsIntarray’: dalvik/vm/native/dalvik_system_Zygote.c:172:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] dalvik/vm/native/dalvik_system_Zygote.c: In function ‘setrlimitsFromArray’: dalvik/vm/native/dalvik_system_Zygote.c:192:19: error: storage size of ‘rlim’ isn’t known dalvik/vm/native/dalvik_system_Zygote.c:200:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] dalvik/vm/native/dalvik_system_Zygote.c:204:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] dalvik/vm/native/dalvik_system_Zygote.c:215:9: warning: implicit declaration of function ‘setrlimit’ [-Wimplicit-function-declaration] dalvik/vm/native/dalvik_system_Zygote.c:192:19: warning: unused variable ‘rlim’ [-Wunused-variable] make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libdvm_intermediates/native/dalvik_system_Zygote.o] 오류 1
Notice file: system/core/libmincrypt/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libmincrypt.a.txt Install: out/host/linux-x86/bin/mkbootimg host C: mksdcard <= sdk/emulator/mksdcard/mksdcard.c <command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default] sdk/emulator/mksdcard/mksdcard.c:1:0: note: this is the location of the previous definition host Executable: mksdcard (out/host/linux-x86/obj/EXECUTABLES/mksdcard_intermediates/mksdcard) true Notice file: sdk/emulator/mksdcard/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//bin/mksdcard.txt Install: out/host/linux-x86/bin/mksdcard host Prebuilt: mkuserimg.sh (out/host/linux-x86/obj/EXECUTABLES/mkuserimg.sh_intermediates/mkuserimg.sh) Notice file: system/extras/ext4_utils/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//bin/mkuserimg.sh.txt Install: out/host/linux-x86/bin/mkuserimg.sh host Prebuilt: monkeyrunner (out/host/linux-x86/obj/EXECUTABLES/monkeyrunner_intermediates/monkeyrunner) Install: out/host/linux-x86/bin/monkeyrunner host C++: obbtool <= frameworks/base/tools/obbtool/Main.cpp <command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror] frameworks/base/tools/obbtool/Main.cpp:1:0: note: this is the location of the previous definition cc1plus: all warnings being treated as errors make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] 오류 1
This happens with commit: a5158b31d97e25832d778a41a31df6ece0fc627e[Ubuntu 11.10 x86_64 running Linux 3.0.0-12-generic]Fix is same build/core/combo/HOST_linux-x86.mk: -HOST_GLOBAL_CFLAGS = -D_FORTIFY_SOURCE=0 HOST_GLOBAL_CFLAGS = -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0[linenumber 59] ------------There are much of: warning: _FORTIFY_SOURCE redefinedBut this frameworks/base/tools/obbtool/Main.cpp is compiled with -Werror
그리고 잠깐 모니터링을 하다, 안드로이드 소스 빌드중 아래와 같은 에러가 발생하고는 빌드가 중단되었습니다 -_-;;
dalvik/vm/native/dalvik_system_Zygote.cpp: In function 'int setrlimitsFromArray(ArrayObject*)': dalvik/vm/native/dalvik_system_Zygote.cpp:194: error: aggregate 'rlimit rlim' has incomplete type and cannot be defined dalvik/vm/native/dalvik_system_Zygote.cpp:217: error: 'setrlimit' was not declared in this scope make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libdvm_intermediates/native/dalvik_system_Zygote.o] Error 1 make: *** Waiting for unfinished jobs....