cloc.exe 다운로드



- 사용법 cloc 경로명 cloc 제외폴더명 경로명 

ex) cloc 프로젝트경로 cloc --exclude-dir=.svn,lib,bin 프로젝트경로


폴더명에 공백이 있으면 에러 발생

저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

[ \res\values\styles.xml ]

<resources> <!-- customized theme for the application or some activities --> <style name="MyTheme" parent="android:Theme.Holo.Light"> ...... ...... <item name="android:actionBarSize">35dp</item> <item name="android:actionBarTabTextStyle">@style/MyTheme.ActionBar.Tab.Text</item> <item name="android:actionBarTabStyle">@style/MyTheme.ActionBar.Tab</item> <item name="android:actionBarTabBarStyle">@style/MyTheme.ActionBar.Tab.Bar</item> </style> <style name="MyTheme.ActionBar.Tab.Text" parent="android:TextAppearance"> <item name="android:textColor">@color/blue</item> </style> <style name="MyTheme.ActionBar.Tab" 

parent="android:Widget.Holo.ActionBar.TabView"> <item name="android:background">@drawable/tab_indicator_inside</item>

</style> <style name="MyTheme.ActionBar.Tab.Bar"

parent="android:Widget.Holo.ActionBar.TabBar"> <item name="android:background">@drawable/tab_indicator_outside</item> <item name="android:showDividers">none</item>

</style> </resources>



[ \res\drawable\tab_indicator_inside.xml ]

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected="true" android:drawable="@drawable/tab_selected_inside" /> <item android:state_selected="false" android:drawable="@drawable/tab_unselected_inside" /> </selector>



[ \res\drawable\tab_indicator_outside.xml ]

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="true"
          android:drawable="@drawable/tab_selected_outside" />
    <item android:state_selected="false"
          android:drawable="@drawable/tab_unselected_outside" />
    
</selector>


※ outside는 tab 전체를 우러르는 배경을 의미하고, inside는 각각의 tab의 배경을 의미한다. 보통의 경우엔 outside는 생략하고 inside로만 처리해도 충분하다.



출처 : http://gwpark.tistory.com/1874

저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

하이브리드 앱

스크랩 2015.03.09 13:09

안드로이드폰 개발이냐? 아이폰 개발이냐? 하는 고민하는 프로그래머들이 꽤나 있습니다. 물론, 연차가 있는 개발자의 경우라면 Objective-C든 Java든 상관이 없다는 의견도 있겠지만, 주력 프로그래밍 언어를 선정하거나 이제 막 공부를 시작하는 앱 개발자라면 이 고민을 안할 수는 없을 것입니다.

관련글 링크 : 안드로이드 VS 아이폰, 어떤 플랫폼에서 개발할까요?

설령 크로스 개발이 가능한 입장이 될 경우라도 아이폰, 안드로이드폰 뿐 아니라 블랙베리, 심비안, 바다 등등의 각종 플랫폼에 맞는 앱을 모두 개발하는 것은 시간적으로나 비용적으로나 부담이 되기 때문에 새로운 대안이 필요합니다.

그래서 등장한 하이브리드앱(Hybrid App)입니다.

하이브리드 앱은 스마트폰으로 브라우져로 접속하는 '모바일 웹사이트'와 어플리케이션을 다운받아 접속하는 '앱'이 합쳐진 형태입니다. 이는 웹표준(HTML5)을 따른 모바일 웹을 만든 이후에 앱에 연동하는 형태로 다양한 플랫폼용으로 개발이 가능합니다.

좀 더 자세히 알아보기 위해서는 먼저 '어플리케이션'과 '모바일웹'의 차이부터 먼저 살펴봐야 하겠습니다.

 Application 
 Mobile Web
 장   점
 구동속도가 빠름
 인터렉티브한 사용자 환경이 제공됨
 OS 및 기기별로 특정 어플의 개발이 가능함
 앱에 비해 개발기간(1달정도)이 짧음
 웹개발 지식으로 개발이 가능
 업데이트 및 수정변경이 용이함
 어떤 OS라도 접근이 가능 (PC에서도 가능)
 단   점
 모바일 웹에 비해 고비용, 개발기간 1~3개월
 업데이트 및 수정이 어려움
 OS별 프로그래밍 언어의 습득이 다름
 인터넷을 통해 접속하므로 구동이 느림
 스마트폰의 특정기능(GPS,가속기 등)사용못함
 브라우저를 통한 2차 접근이라 접근성 낮음
 비   고
 빠른 구동속도 및 스마트폰 개별 특징을 이용한 앱 개발이 강점
 기종을 가지리 않아 접근성이 좋고, 웹을 통한 접속으로 따로 설치가 필요없어 부담없이 접근이 가능함. 


위의 표에서 설명한 것과 같이, 앱은 반응속도가 빠르고 OS별로 제작되어 각각의 스마트폰에 최적화된 화면구성을 나타낼 수 있습니다. 대신에 OS별로 제작해야 하는 개발비가 부담스럽고 업데이트를 할 때마다 새로 설치를 해야 하는 불편함이 있습니다.(개발사 입장에서는 매번 앱스토어 심사를 받아야 합니다.)

반면, 모바일웹은 개발비가 적게들고 다양한 플랫폼에서 제작을 할 수 있다는 장점과 브라우저를 통해 구현되기때문에 사용자 접근성이 낮고 모든 리소스를 매번 웹에서 다운받아야 하므로 느리다는 단점이 있습니다.

그래서 이 두가지의 장점을 합한 것이 '하이브리드앱'입니다.

'하이브리드앱'은 기본적으로는 웹기술을 통해 내부구조와 인터페이스를 구축하고, 단말기 센서나 카메라, 가속기 등의 웹기술이 지원하지 않는 기능을 단말기 전용 API(Application Programming Interface)를 씁니다. 그리고, HTML5과 CSS3, 자바스크립트 API 코드로 구성된 프로그램 소스를 앱처럼 단말기에서 실행되도록 패키징한다('감싼다')고 합니다. 즉, 코드구현은 웹이지만, 포장은 앱처럼 쓸 수 있습니다.

터치스크린 단말기용 모바일웹 개발 프레임워크는 센차터치(Sencah Touch)와 JQ터치(jQTouch)가 있고, 패키징툴로는 폰갭(phoneGap)과 한국의 KTH에서 개발한 앱스프레소(Appspresso)가 있습니다. 개발부터 패키징까지 다 할 수 있는 앱셀러레이터 티타늄(Appcelerator Titanium)이라는 솔루션도 있습니다.

이 포스팅에서는 하이브리드 앱이라는 개념에 대해서 설명해 보았구요. 이들 개발툴에 대한 포스팅은 다음 번에 따로 하기로 하겠습니다. 



출처 : http://babcider.tistory.com/80

저작자 표시 비영리 변경 금지
신고

'스크랩' 카테고리의 다른 글

하이브리드 앱  (0) 2015.03.09
XCAP (XML Configuration Access Protocol)  (0) 2015.03.05
ZeroMQ에 대한 소개글 번역  (0) 2013.05.23
Posted by 치요맘

XCAP 표준 기술은 SIMPLE 워킹그룹의 주요 멤버인 Jonathan Resenberg에 의해 제안되었다. XCAP 표준 기술은 특정 응용 서비스를 위한 사용자 설정 정보를 XCAP 서버에 등록해 두고, XCAP 클라이언트에서 서버에 등록된 정보를 직접 관리하기 위한 기술이다. XCAP 서버에 저장되어 있는 응용별 사용자 설정 정보는 XML로 기술되어 있으며, XCAP 클라이언트에서 XCAP 서버로 접근하기 위한 프로토콜로는 HTTP 1.1이 사용된다. GET, PUT, DELETE 등 3가지 HTTP 메소드를 사용하고 있으며, XML 문서내 특정 노드를 핸들링 하기 위해 HTTP URI 매핑이 필요하다.

다음 그림은 SIP기반 IMPP 서비스 제공을 위한 기본적인 시나리오를 보여준다. 그림에서 보듯이, 사용자 A에서 자신의 그룹 목록(리소스 리스트)이나, 프레즌스 정보에 대한 사용자 허용여부 정보를 DMS(Data Manipulation Server) 서버에 등록하게 되며, 이를 위한 인터페이스로 XCAP이라는 방식을 제안하고 있다.





XCAP 이벤트 패키지
XCAP 표준 기술에 의하면, XCAP 서버에 저장된 XML 문서를 다수의 XCAP 클라이언트가 핸들링할 수 있다. 이에 XCAP 클라이언트는 XCAP 서버 내 문서가 다른 XCAP 클라이언트에 의해 변경되었음으로 통지받을 필요가 있다. 또한 PA 서버의 경우에도 프레즌스 권한 정책이 변경되거나, 그룹 내 멤버 목록이 변경될 때마다 XCAP 서버로부터 변경여부를 통지받을 필요가 있다. 이에 XCAP 이벤트 패키지 문서가 제안되었으며 관련 처리동작은 다음 그림과 같다.





출처 : http://egloos.zum.com/codeboxter/v/225145


저작자 표시 비영리 변경 금지
신고

'스크랩' 카테고리의 다른 글

하이브리드 앱  (0) 2015.03.09
XCAP (XML Configuration Access Protocol)  (0) 2015.03.05
ZeroMQ에 대한 소개글 번역  (0) 2013.05.23
Posted by 치요맘
  1. http://www.visualsvn.com/downloads/로 가서 최신 SVN command line tool 다운 .
  2. Android Studio 에 File -> Settings -> Version Control -> Subversion 로 들어가서 Use command line client 에 1.에서 다운로드 받은 폴더의 svn.exe의 경로를 세팅.
  3. Android Studio를 재시작 하고 VCS -> Check from Version Control -> Subversion 에서 SVN URL을 입력하고 계정 입력후 Check Out버튼 클릭 -> Local 폴더 지정한다 
  4. 메뉴에서 VCS -> Import into Version Control.


저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

Android Log (logcat) 보기

http://www.dreamy.pe.kr/zbxe/CodeClip/156338


logcat 사용법

http://www.dreamy.pe.kr/zbxe/CodeClip/142826





단말에서 현재까지 로그 파일로 저장

Runtime.getRuntime().exec("logcat -v time -f mnt/sdcard/moaplayer/error_log.txt *:I");

// *:I는 info level이상 출력

저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

모바일 UI 디자인 패턴 모음 사이트

http://monsterdesign.tistory.com/1630

저작자 표시 비영리 변경 금지
신고

'안드로이드 > ' 카테고리의 다른 글

Android Studio 에 SVN 연동하기  (0) 2015.01.27
android logcat 관련 내용  (0) 2014.03.25
모바일 UI 디자인 패턴 모음 사이트  (0) 2014.03.19
WebView 로 Youtube 연동시 문제  (0) 2013.10.17
단말 정보 가져오기  (1) 2013.10.10
설치된 apk 파일 가져오기  (0) 2013.05.16
Posted by 치요맘

TextView 에 marquee 속성, 즉 흘러가는 텍스트 처리를 하기 위해서는

elipsize 속성에 marquee 로 정의해 주고 아래와 같은 조건이 추가로 더 필요하다.


1. single 라인 일 것.

2. 소스에서 setSelected(true); 를 호출해 줄 것.



그런데 어떤 이벤트에 의해서 

해당 텍스트가 아닌 다른 레이아웃의 내용이 바뀌면 marquee가 멈춰버리는 문제가 발생했다.


해당 텍스트 바로 아래 텍스트에 setText를 해주면서 생긴 문제여서

단순하게 해당 뷰로 focus가 가서 그렇다고 생각하고 focus 설정도 이리저리 해봐도 요지부동ㅠㅠ

그래서 TextView 클래스의 소스를 가져와 분석하기 시작했다.


알고보니 레이아웃의 높이, 너비가 wrap_content 로 설정되어 있어서 생긴 문제...

특정 값으로 고정 해주면 문제 없음!


추가로 focus 또는 select 둘중 하나만 해당되도 marquee 는 흘러간다.

고로 setSelected(true) 만 한번 호출해주면 그후로는 포커싱이나 셀렉팅에 관하여 신경쓸 필요 없다.


저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

풀스크린으로 플레이시 영상 안나오는 문제


// 해당 activity onCreate()에 아래 코드 추가

if(android.os.Build.VERSION.SDK_INT >= 11)

{

getWindow().addFlags(16777216);

}


해당 activity 종료 시 MediaPlayer 또는 WebView 남아있는 문제


// 해당 activity onDestroy()에 아래 코드 추가

if(m_oWebView != null)

{

m_oWebView.destroy();

m_oWebView = null;

}

저작자 표시 비영리 변경 금지
신고
Posted by 치요맘

// 시스템 정보

TelephonyManager manager = (TelephonyManager) getSystemService(Activity.TELEPHONY_SERVICE);


mdn 번호 = manager.getLine1Number();    // 전화번호

imei = manager.getDeviceId();

국가코드 = manager.getNetworkCountryIso();

망 사업자 코드 MCC+MNC = manager.getNetworkOperator();

망 사업자명 = manager.getNetworkOperatorName();

가입자 ID = manager.getSubscriberId();

SIM 상태 = manager.getSimState();


// 디스플레이 정보

DisplayMetrics displayMetrics = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);


density = displayMetrics.density;

densityDpi = displayMetrics.densityDpi;

width = displayMetrics.widthPixels

height = displayMetrics.heightPixels;


// network 정보

WifiManager wirimanager = (WifiManager) getSystemService(Context.WIFI_SERVICE);

WifiInfo info = wirimanager.getConnectionInfo();


MAC address = info.getMacAddress();



저작자 표시 비영리 변경 금지
신고
Posted by 치요맘


티스토리 툴바