Programming - Links

안드로이드 개발 관련 링크

콜러스 XXII 2011. 6. 24. 19:15

 


[BLE 예제]

https://developer.android.com/samples/BluetoothLeGatt/index.html



[Android Studio NDK 쓰기]

http://blog.burt.pe.kr/ndk-build%EB%A5%BC-android-studio%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/

https://www.youtube.com/watch?v=0fEtrekNcOo


[프로그램간 볼륨조정]

http://android-developers-kr.blogspot.kr/2013/10/blog-post_27.html



[BT]


http://www.programcreek.com/java-api-examples/index.php?api=android.bluetooth.BluetoothA2dp

http://alvinalexander.com/java/jwarehouse/android/core/java/android/bluetooth/BluetoothA2dp.java.shtml




[NDK 이용]

 

http://www.androidpub.com/83227

http://sunnmoon.egloos.com/2153304

 

NDK : http://puresay.springnote.com/pages/5470669
      http://blog.naver.com/PostView.nhn?blogId=brighteyes79&logNo=130081136539
      http://dustinlee.egloos.com/1984801 : with opengl

VS2011에서 NDK 쓰는 툴 : http://code.google.com/p/vs-android/


NDK 설치 참조 (이걸로 함) : http://kaludin.egloos.com/2668155


<다음의 준비물이 필요함>


Android SDK

Android NDK

Eclipse (IDE)

cygwin (NDK  컴파일용)


귀찮아서 Linux는 설치 안함. 2nd PC가 있으면 할꺼임~

 

JNI 성능 개선 : http://blog.jayway.com/2010/01/25/boosting-android-performance-using-jni/

                     http://jaehwa.egloos.com/1045413  <-- 이건 한글...

 

JNI 연결 간략 문서 : http://www.cl.cam.ac.uk/teaching/0910/CandC++/lecture8-6up.pdf

                       

http://marakana.com/bookshelf/java_fundamentals_tutorial/_java_native_interface_jni.html

JNI - C 인터페이스 :  http://www.cs.cmu.edu/~illah/HOWTO/javamanual.pdf

 

POSIX Serial 이용 : http://sourceforge.net/projects/libserial/files/libserial/

                            http://www.aesop.or.kr/?document_srl=404740

 

http://www.aesop.or.kr/?mid=Board_Documents_AndroidAppDev : serial port
http://isulnara.com/tt/223 : 에뮬에서 시리얼 통신하기
http://www.easysw.com/~mike/serial/serial.html : POSIX serial
http://torpedo7.egloos.com/79984 : Linux serial howto

http://isulnara.com/tt/223 : 헐 컴포트를 COM4 이내로 제한 해야 하네..

 

http://dlucky.tistory.com/156 <-- adb에 busybox 설치. 이걸 설치해야 편한듯..

http://benno.id.au/blog/2007/11/14/android-busybox : 누가 안드로이드용으로  compile해둠


[JNI 헤더 만들기]  


- 일단 프로젝트 루트에가서 ...

# javah -classpath bin xxx.yyy.<class-name>   


[NDK 빌드 command]


- Android.mk 있는 폴더로 가서

# ndk-build

실행


* 안드로이드 에뮬레이터로 Serial 통신 성공 !!

 

1. adb shell 에서 /dev/ttyS2의 퍼미션을 777로 만든다. 반드시 ttyS2로 해야 한다.

    에뮬레이터에서 Serial option 메핑이 그쪽으로 되는듯...

2. 에뮬레이터를 serial port number를 지정해서 실행한다.

3. 잘된다 -,-.

 

http://stackoverflow.com/questions/4610086/pthread-cancel-alternatives-in-android-ndk : pthread 문제

 

http://forum.falinux.com/zbxe/?document_srl=531458&mid=android

 

http://junho85.springnote.com/pages/6201241#toc_10

 

[NDK를 이용한 C코드 이용]

http://www.ibm.com/developerworks/opensource/tutorials/os-androidndk/os-androidndk-pdf.pdf

 

[Java 함수 포인터 전달]

 

https://www.imaso.co.kr/?doc=bbs/gnuboard.php&bo_table=article&keywords=%C0%D0%C0%BB%B0%C5%B8%AE&page=17&wr_id=34479

 

[JNI 스펙 ]

 

http://java.sun.com/docs/books/jni/html/titlepage.html

 

흠흠.. C# 이전에 개발된지라... C 연동에 꽤나 많이 돌아가는 느낌이다.


암튼... 시그너쳐 알수 있는 방법은 다음 명령으로 ... 순간 수동으로 해야 하는지 고민했네...


# javap -s -p <class-name>


[함수포인터 이용]


http://blog.daum.net/_blog/BlogTypeView.do?blogid=0RBJ8&articleno=8&_bloghome_menu=recentthumb#ajax_history_home




[유분투 12.04 에서 NDK Compile 준비]



[NDK 리눅스에 설치]


1. Linux 설치 한다. (유분투 12.04 기준)


2. http://developer.android.com/tools/sdk/ndk/index.html#Installing 

   에서 Linux용 Android NDK 다운로드 받는다.

   

   http://developer.android.com/sdk/index.html 에서 

   Android SDK도 받는다.


3. vmware에서 Shared 폴더를 설정한다.


4. Linux에서 vmware-tool을 설치한다. 그러면 Shared folder가 인식이 된다. 위치는 

   /mnt/hgfs/<폴더명> 이다.


5. 적당한 위치에 ndk와 sdk의 압축을 푼다.

   나는 ~/Development 에 풀었다.


6. Java SDK를 설치한다.

   http://blog.sudobits.com/2011/09/14/how-to-install-jdk-on-ubuntu-11-10/ 

   http://narmins.tistory.com/5

   http://deviantcj.tistory.com/445 : PPA 지우는 법 있다.

   http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html

   참조. Sun SDK를 설치한다.


   <설치>  

   $ sudo add-apt-repository ppa:webupd8team/java

   $ sudo apt-get update

   $ sudo apt-get install oracle-jdk7-installer


   <만일 몇가지 버젼이 깔려 있는 경우 자바 선택>

   $ sudo update-alternatives --config java 


7. 안드로이드 SDK를 설치한다. (오래걸린다.)

   $ sudo <android-sdk 압축 푼곳>/tools/android update sdk --no-ui


8. 안드로이드 NDK를 설치한다.


   8.1 압축을 푼다.

   8.2 /etc/profile에 다음과 같은 라인을 추가한다.     

PATH=.:<ndk 압축 푼 폴더 위치>:$PATH

export PATH

NDK_PROJECT_PATH=.

export NDK_PROJECT_PATH


9. NDK Sample을 Compile 해본다. 

   samples/hello-jni로 가서 ndk-build 라고 치면 자동으로 Compile 된다.





[BT 통신 관련]



[ubuntu 12.10에서 JDK7 설치]

- 링크 : http://ubuntuportal.com/2012/01/how-to-install-oracle-java-development-kit-7-jdk7-in-ubuntu-11-1012-04-via-ppa.html

- 설치
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo mkdir -p /usr/lib/mozilla/plugins #just in case, this will be added to the package in the next version
sudo apt-get install oracle-jdk7-installer 

- 삭제
sudo apt-get remove oracle-jdk7-installer


[JNI에서 Telephony Manager 이용할때 뻑이 나는 경우]


결론은 this pointer를 수동으로 다시 넣어주는것 !!

[안드로이드 NDK에서 Multi so 생성법]





[RTSP]


https://github.com/spex66/RTSP-Camera-for-Android

http://www.ohloh.net/p/rtsp-camera-for-android

http://www.gstreamer.com/

http://blog.rocapal.org/?p=506

https://github.com/yixia/VitamioBundle/tree/master

http://javacan.tistory.com/231

http://www.anddev.org/multimedia-problems-f28/how-to-play-streaming-audio-from-rtsp-url-in-android-t54608.html

http://developer.android.com/guide/appendix/media-formats.html

http://www.programmingrelief.com/3015895/Mjpeg-Video-Streaming-Over-Rtsp-For-Android


간단 스트리밍 하기 :  http://blog.naver.com/PostView.nhn?blogId=jinydoggebi&logNo=120114739032



[Linux에서 JDK 수동 설치]


http://forum.falinux.com/zbxe/index.php?document_srl=574845&mid=lecture_tip



[VLC 안드로이드]


https://wiki.videolan.org/AndroidCompile/


[VLC compile 위한 Tool (Linux)]


apache-ant (or ant),   -

m4, -

autoconf, -

automake, -

autopoint, -

cmake,   -

gawk (or nawk), -

gcc, -

g++, -

libtool, -

patch, -

pkg-config, -

ragel, -

subversion -



[VLC Compile 위한 환경 (Linux)]


# for Developmet


export ANT_HOME=/usr/bin/ant

export ANT_OPTS="-XX:MaxPermSize=900m -Xmx900m"


PATH=$PATH:$ANT_HOME/bin:/home/juno/android-tools/android-ndk-r9c

export PATH="$PATH"


export ANDROID_SDK=/home/juno/android-tools/adt-bundle-linux-x86-20131030/sdk

export ANDROID_NDK=/home/juno/android-tools/android-ndk-r9c

export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools


export ANDROID_ABI=armeabi-v7a


[ant 설치 (Linux)]

http://raycoding.net/2013/02/15/installing-ant-on-ubuntu-or-linux-box/


[Botan Compile 하기] - A crypto graphy library for cross platform

How to in Android : http://www.tiwoc.de/blog/2013/03/building-the-botan-library-for-android/
                 ./configure.py --gen-amalgamation --cpu=armv5te --os=linux --cc=gcc --with-tr1=none
How to in PC : http://www.cprogramdevelop.com/1752790/
                      python configure.py --cc=msvc --disable-asm --cpu=x86_32 
                      (32bit native prompt를 열어서 해야함.)







 

'Programming - Links' 카테고리의 다른 글

Java 개발 관련   (0) 2014.10.15
인터넷 프로그래밍 관련  (0) 2013.03.14
윈도우 폰 관련 링크  (0) 2011.11.22
Apple App 개발 관련 링크  (0) 2010.12.16
내가 필요해서 링한 사이트  (0) 2008.12.11