2014년 1월 18일 토요일

[안드로이드 앱 개발] 안드로이드 이미지 버튼 배경 투명하게 만들기

안드로이드 이미지 버튼 배경 투명하게 만들기입니다.

레이아웃창에서 이미지 버튼 태그 안에

android:background="@android:color/transparent"

속성을 주면 됩니다.

2014년 1월 8일 수요일

[프로그래밍 기초] 프로그램, 프로세스, 쓰레드란 어떻게 구별될까요?

쓰레드(Thread)란 무엇일까요?

이것을 이해하기 위해서는 선 개념이 필요합니다.

프로그램이란? 프로세스란? 쓰레드란? 입니다.

우리가 일반적으로 말하는 프로그램은 컴퓨터에서 실행되는

하나의 소프트웨어를 말하는 것입니다.  (메모장, 파워포인트,한글,워드 등)

그럼 프로세스란 무엇일까요? 소프트웨어에서 독립적인 기능을 수행하는

작은 프로그램단위입니다. 즉 엄밀히 말하자면

하나의 프로세스로도 독립적인 프로그램으로 구성할 수 있습니다.

마지막으로 쓰레드란 무엇일까요?

앞에서 말한 프로세스내에서 수행되는 가장 작은 실행 단위를 말합니다.


연관지어 설명하면 일반적으로 하나의 프로그램은

한개 이상의 프로세스로 구성되어 있으며,

하나의 프로세스는 한 개 이상의 프로세스로 구성될 수 있으며,

하나의 프로세스는 한 개 이상의 쓰레드로 구성됩니다.


캡쳐프로그램의 대명사인 스내그잇 프로그램을 예를 들어보면

스내그잇은 크게 3개의 프로세스를 가지고 있습니다.

작업관리자를 살펴보면 실행되고 있는 프로세스를 볼 수 있습니다.


이 각각은 또 작은 프로세스를 가지고 있습니다.

라이브러리 형태의 프로세스가 대표적인 예가 되겠습니다.

라이브러리 형태의 프로세스는 다른 프로세스에 의해 실행되며

작업관리자에는 나타나지 않습니다.

따라서 각각의 메뉴는 또 작은 프로세스로 구성되어 있다고 할 수 있습니다.



빨간색의 버튼을 클릭하는 순간 캡쳐 프로세스가 작동을 하고,

이는  또 다시 여러개의 작은 작업단위(쓰레드)로 쪼개어져 각각의 일을 수행합니다.



하나의 쓰레드는 좌표값을 열심히 조사합니다.

하나의 쓰레드는 열심히 화면을 업데이트합니다.

하나의 쓰레드는 좌표가 있는 곳의 이미지를 확대하여 보여줍니다.

이처럼 쓰레드들이 각각의 기능을 수행하여 하나의 프로세스를 완성하는 것입니다.

실제로 보면 프로세스는 동네를 구분짓는 울타리라고 볼 수 있죠.

실제로 일은 쓰레드가 하는 것이죠!!!!

쓰레드는 그 태생부터가 멀티태스킹을 위해 존재하는

가장 작은 실제 작업 단위라고 보시면 됩니다.

2014년 1월 6일 월요일

[안드로이드 앱 개발] 안드로이드 앱 개발시 주의 사항

안드로이드 앱 개발시 주의할 사항 몇가지를 메모 해본다.

1. 패키지명

com.example로 시작하는 패키지명을 사용할 수 없습니다.

2. Export시

key로 export하지 않으면 마켓에 올릴 때 정렬되지않은 앱이라는 에러메세지가 발생합니다.

3. apk업로드시

"이미 버전 코드가 1인 APK가 있으므로 다른 버전 코드를 사용해야 합니다."라는 오류메세지가 발생한다면 소스코드에서 'AndroidManifest.xml' 파일을 수정하면 된다.

android:versionCode="2"  android:versionName="1.1"

버전코드는 몇번째 수정된 버전인지 기록하는 것이고,

버전이름은 프로그램의 공식적인 버전을 기록하는 것입니다.