Programming & Tools/Android2016. 9. 20. 11:07

HM-10C 블루투스 소스를 보면 중국어가 다 깨지는 현상이 있는데, UTF-8로 변경을 해도 글자가 깨진다.

 

이를 해결하는 방법으로 2번 변환 해주면 해결이 된다.

 

Android Studio에서 해당 소스를 Big5-HKSCS 로 변환을 한번 한 후 다시 GB18030으로 변환을 하면 해당

 

문자로 표시가 된다.

 

 

 

이 해당 문자를 구글 번역기로 돌린 후 다시 UTF-8로 변경하면 된다.

 

注册接收的事件 : Register the event received

 

按钮事件 : Button events

 

请输入要发送的内容 : Please enter the content to be sent

 

连接成功,现在可以正常通信! : The connection is successful, we can now communicate properly!

 

点击按钮 : Click the button

 

初始化 : initialization

 

收到数据 : Receive data

 

可以开始干活了 : You can start work again

 

断开连接 : Disconnect

 

连接成功 : connection succeeded

 

您的设备不支持BLE : Your device does not support BLE

 

查找BLE设备 : Find BLE device

 

连接 : connection

 

断开 : disconnect

 

搜索 : search for

 

停止 : stop

Posted by 다크쌍피
Programming & Tools/Android2015. 9. 22. 17:12

안드로이드 스마트폰에서 LTE 망의 음성 품질을 측정 하는 앱으로 "HD 보이스 음성품질 측정"을 소개 한다.

해당 앱은 상대방이 말하는 음성이 내귀에 들리는 음성품질 값과, 내가 말하는 내용이 상대방의 귀에 들리는 음성 품질 양방향 모두 측정해서 GUI 형태로 출력해 준다. 집에서 wifi로 사용하는 인터넷 전화의 품질 값도, 측정이 가능하다.

 

 

해당 내용은 다음의 블로그에서 확인이 가능하며 다운로드는 앱스토어에서 다운로드가 가능하다.

 

해당 블로그

http://hdvoice.tistory.com

 

앱스토어

https://play.google.com/store/apps/details?id=com.newbroad.hdvoice&hl=ko 

 

 

 

 

 

Posted by 다크쌍피

s5pv210 ICS 4.x 의 default.prop에 내용을 추가 하고 싶을때는


ics/device/samsung/smdkv210/device.mk 파일에 내용을 아래와 같은 형식으로 추가 해주면 된다.



PRODUCT_PROPERTY_OVERRIDES += \
    ro.sf.lcd_density=160 \
    ro.opengles.version=131072

# Set default USB interface
#  ++ dark2pee
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
        persist.sys.usb.config=mass_storage,mtp

PRODUCT_PROPERTY_OVERRIDES += \
        hwui.render_dirty_regions=false


Posted by 다크쌍피

삼성 s5pv210 칩을 사용하는 마이크로 비젼의 MVV210에서 mtp_usb USB Gadget을 사용하기 위해서는 부팅 초기화


명령어에 권한을 바꿔 줘야 한다. SD Card에 부트로더와 커널을 사용하는 MVV210 ICS에서는


ics/device/samsung/smdkv210/init.smdkv210_sdmmc.rc 파일을 아래와 같이 수정해 주면 된다.



                   :

on boot
    mount debugfs /sys/kernel/debug /sys/kernel/debug
    chmod 0666 /dev/pvrsrvkm
        setprop ro.build.product smdkv210
        setprop ro.product.device smdkv210

    chmod 0666 /sys/class/backlight/pwm-backlight.0/brightness
    chown system system /sys/class/backlight/pwm-backlight.0/brightness
    #dark2pee Init (sys.usb.config value is writen in default.prop)
    chmod 777 /dev/mtp_usb
    chown root /dev/mtp_usb

                     :


Posted by 다크쌍피

삼성의 s5pv210칩의 안드로이드 4.x USB 디바이스 가젯 초기화 스크립트인 /init.smdkv210.usb.rc 를 수정하려면


ICS 소스 디렉토리인 /ics/device/samsung/smdkv210/init.smdkv210.usb.rc 를 수정하면 된다 property를 추가 하려면 아래와


같이 추가 해주면 된다.(mtp 추가)



on boot
    write /sys/class/android_usb/android0/iManufacturer $ro.product.manufacturer
    write /sys/class/android_usb/android0/iProduct $ro.product.model
    write /sys/class/android_usb/android0/iSerial $ro.serialno
    write /sys/class/android_usb/android0/f_mass_storage/inquiry_string "Android  Mass Storage"
    write /sys/class/android_usb/android0/f_rndis/manufacturer Samsung
    write /sys/class/android_usb/android0/f_rndis/vendorID 04e8
    write /sys/class/android_usb/android0/f_rndis/wceis 1

on property:sys.usb.config=mass_storage
    write /sys/class/android_usb/android0/enable 0
    write /sys/class/android_usb/android0/idVendor 18d1
    write /sys/class/android_usb/android0/idProduct 4e21
    write /sys/class/android_usb/android0/functions $sys.usb.config
    write /sys/class/android_usb/android0/enable 1
    setprop sys.usb.state $sys.usb.config

on property:sys.usb.config=mass_storage,adb
    write /sys/class/android_usb/android0/enable 0
    write /sys/class/android_usb/android0/idVendor 18d1
    write /sys/class/android_usb/android0/idProduct 4e22
    write /sys/class/android_usb/android0/functions $sys.usb.config
    write /sys/class/android_usb/android0/enable 1
    start adbd
    setprop sys.usb.state $sys.usb.config

on property:sys.usb.config=rndis
    write /sys/class/android_usb/android0/enable 0
    write /sys/class/android_usb/android0/idVendor 04e8
    write /sys/class/android_usb/android0/idProduct 6863
    write /sys/class/android_usb/android0/functions $sys.usb.config
    write /sys/class/android_usb/android0/bDeviceClass 224
    write /sys/class/android_usb/android0/enable 1
    setprop sys.usb.state $sys.usb.config

on property:sys.usb.config=rndis,adb
    write /sys/class/android_usb/android0/enable 0
    write /sys/class/android_usb/android0/idVendor 04e8
    write /sys/class/android_usb/android0/idProduct 6864
    write /sys/class/android_usb/android0/functions $sys.usb.config
    write /sys/class/android_usb/android0/bDeviceClass 224
    write /sys/class/android_usb/android0/enable 1
    start adbd
    setprop sys.usb.state $sys.usb.config

#===================================================================
# dark2pee USB Device
#===================================================================
on property:sys.usb.config=mass_storage,mtp,adb
    write /sys/class/android_usb/android0/enable 0
    write /sys/class/android_usb/android0/idVendor 18d1
    write /sys/class/android_usb/android0/idProduct 4e22
    write /sys/class/android_usb/android0/functions $sys.usb.config
    write /sys/class/android_usb/android0/enable 1
    start adbd
    setprop sys.usb.state $sys.usb.config



Posted by 다크쌍피

안드로이드 앱인 apk 나 기타 파일을 브라우져에서 다운로드 할때 다운로드가 되지 않고


프로그래스 바가 계속 진행중만 나올때의 문제점.


Kernel에서 IPv6를 빼고 컴파일 했더니 위와 같은 문제가 발생 하였음.


kernel에서 IPv6를 추가하고 다시 컴파일 하면 정상적으로 다운로드가 됨.

Posted by 다크쌍피
Programming & Tools/Android2013. 5. 21. 16:40

안드로이드 커널에서 프로그램을 실행 하기 위해서 크로스 컴파일 시

not executable: magic 7F45

메시지가 출력 되고 프로그램을 실행 시킬 수 없을 때 컴파일 옵션을 확인 해봐야 한다.


컴파일 시 링크가 정상적으로 되지 않아서 실행 파일로 생성이 되지 않았을 것이다.

type이 EXEC (Executable file) 인지 확인해본다.


컴파일 후 elf 파일 헤더를 확인해 본다.


$ arm-none-linux-gnueabi-readelf --file-header --arch-specific XXXXXXfile

ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           ARM
  Version:                           0x1
  Entry point address:               0x8120
  Start of program headers:          52 (bytes into file)
  Start of section headers:          554168 (bytes into file)
  Flags:                             0x5000002, has entry point, Version5 EABI
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         6
  Size of section headers:           40 (bytes)
  Number of section headers:         28
  Section header string table index: 25
Attribute Section: aeabi
File Attributes
  Tag_CPU_name: "5TE"
  Tag_CPU_arch: v5TE
  Tag_ARM_ISA_use: Yes
  Tag_THUMB_ISA_use: Thumb-1
  Tag_ABI_PCS_wchar_t: 4
  Tag_ABI_FP_denormal: Needed
  Tag_ABI_FP_exceptions: Needed
  Tag_ABI_FP_number_model: IEEE 754
  Tag_ABI_align8_needed: Yes
  Tag_ABI_align8_preserved: Yes, except leaf SP
  Tag_ABI_enum_size: int



Posted by 다크쌍피
Programming & Tools/Android2013. 5. 21. 14:44

안드로이드 보드의 Kernel에서 프로그램을 사용하기 위해서 Cross Compile 후 실행 하였을 때


/system/bin/sh: ./test: No such file or directory


메시지로 출력 되는 경우 컴파일 옵션이 잘 못 되서 이다.

일반적인 gcc는 glibc를 사용하지만 Android는 루트 파일 시스템의 shared library(.so)는 libc(bionic) 기반이

므로 컴파일시 -static 옵션을 추가하여 실행 파일에 포함 시켜 주어야 한다.


$arm-none-linux-gnueabi-gcc -o test test.c -static


Posted by 다크쌍피
Programming & Tools/Android2012. 3. 23. 11:03
에뮬레이터 실행 시 콘솔 메시지 창에
"Re-installation failed due to different application signatures" 메시지가
뜨고 어플이 실행 안될때 해결 방법
 

에뮬레이터에서
Menu -> Setting -> Applications -> Manage application -> 해당 어플 선택 -> Uninstall  
Posted by 다크쌍피
Programming & Tools/Android2012. 3. 23. 10:54
"your project contains errors please fix them before running your application"

MAC OSX 해결 발법
1. 메뉴 Project -> Clean -> Clean project selected below 
2. 터미널 실행
    #:$ cd ~/.android/

    #: android$ rm debug.keystore
Posted by 다크쌍피