프로그램 103

안드로이드 절전모드 체크(위젯 Timeout)

안드로이드에서 절전모드를 실행시키면 화면밝기, 해상도, 백그라운드 네트워크를 제한하네요.. 제가 절전모드를 사용하는지도 모르고 위젯에서 통신시 TimeOut 나는 현상을 하루종일 찾아봤네요...전 반쪽자리 개발자 인가 봅니다. 현상을 재현하기도 어려웠던게 개발자이다 보니 항상 디바이스에 잭을 꽂아 놓으니 재현하기 어려웠습니다.(절전모드를 실행하여도 디바이스가 충전중일땐 예외로 되는거 같아요.) 이 이부분으로 인하여 앱의 로직도 조금은 수정을 해야했습니다. //절전모드 체크 PowerManager powerManager = (PowerManager) getActivity().getSystemService(Context.POWER_SERVICE); if (android.os.Build.VERSION.SDK_..

안드로이드 사이드바 생성

안드로이드 사이드바 만들기입니다. 사이드바를 생성하는 방법은 여러가지가 있습니다. 정답이 없죠. 자신이 원하는, 생각하는 구조 형태마다 다르게 생성할수 있을것 입니다. 코드와 함께 차근차근 따라해 보시길 바랍니다. 따라서 완성하시면 아래와 같이 보이실 것입니다. 1. 사이드바 xml생성입니다. 샘플에 들어있는 이미지들은 따로 첨부안할게요...쓰고 싶은 이미지들 다운받아 쓰셔요. 2. 사이드바 CustomView를 만들어 줍니다. public class SideBarView extends RelativeLayout implements View.OnClickListener{ /** 메뉴버튼 클릭 이벤트 리스너 */ public EventListener listener; public void setEventL..

Webview를 이용한 APP간 통신[Scheme, Androidbridge]

안드로이드 WebView 사용시 앱과 웹간에 특정한 값을 주고 받아서 값을 해결해야 할 경우가 엄청나게 많이 있습니다. 네이티브영역으로 되어있는 Activity로 이동을 해야한다던지, 카메라기능을 연다던지 할 경우 웹페이지에서 앱의 모든 기능을 사용할수 없기때문이죠. 위와 같은 기능을 해야할 경우가 딱! 웹앱간 특정값을 주고 받는 일이 일어나서 그값에 따라서 동작을 해야하는 경우지요. 웹과 앱 사이에 데이터를 주고 받는 패턴이 2가지가 있습니다. 하나는 스킴(SCHEME)값을 이용한 방법과 두번째는 안드로이드 브릿지를 이용한 호출이 되겠는데요. 제가 최초 하이브리드 앱 개발시에는 안드로이드 브릿지를 이용한 호출 방법을 이용했습니다. 웹 개발자 분도 저에게 어떻게 값을 줘야하는지 몰라서 제가 구글링을 하다..

안드로이드 웹뷰에서 pdf파일 열기[Webview PDF]

안드로이드 하이브리드앱을 작업하다보면 .PDF 다운받거나 웹에있는 파일을 열어서 보여줘야하는 상황이 생긴다. 막상 그냥 PDF파일을 url로 열경우 이상하게 깨지거나 하는등의 문제점등이 발생한다. 그래서 웹뷰에서 PDF파일을 열어 보기 위해서 특별한 작업을 해줘야 하는데 웹개발자가 data를 던저주는 형식에 따라 조금 달라지는거 같다. 첫번째 웹 개발자가 PDF에 대한 url을 storage/product/brochures파일명.pdf 이런 형식으로 준다면 docs.google.com/gview?embedded=true&url= loadUrl("https://docs.google.com/viewer?url=" +data);

안드로이드 애니메이션 코드[Android Animation]

두번째 안드로이드 애니메이션 작업에 대한 글입니다. 이전 글에서 Xml을 이용한 안드로이드 애니메이션 처리방법이었습니다. 이번에는 오직 코드로 작업하는 방법에 대해서 바로 설명 드리겠습니다. Translate 는 TranslateAnimation 이란 함수를 이용하고 Alpha는 AlphaAnimation 함수를 이용합니다. 샘플 코드로 설명드리겠습니다. TranslateAnimation animation = new TranslateAnimation(0, fromX , 0, fromY); animation.setDuration(3000); animation.setFillAfter(false); animation.setFillEnabled(true); animation.setAnimationListener..

안드로이드 애니메이션 Xml이용[Android Animation]

앱개발을 한다면 이 애니메이션 작업은 빠질수 없는 부분중 하나라고 볼수 있습니다. 보통 메뉴 버튼 클릭시 나타나는 사이드바 작업또한애니메이션 작업이 이뤄지기 때문이지요. 이처럼 간단한 부분 모두 애니메이션으로 작업되어 있습니다. 안드로이드 애니메이션은 총 4가지로 이루어져 있습니다. 1. 가장 많이 쓰는 View의 위치를 움직이는 Translate2. View를 회전시키는 Rotate, 3. View의 투명도를 조정하는 Alpha4. View를 확대/축소 시키는 scale 이중에 실제로 프로젝트에 적용했었던 것들은 Translate와 Alpha 정도입니다. 다음 프로젝트나 유지보수중 필요하다면 그때 즈음에나샘플링 작업을 하면서 한번 사용해볼 예정입니다. 우선 이 글에서는 제가 작업해 보았던 2가지에 대해..

톰캣(Tomcat) 설치하기 및 이클립스 연동

설치한 이클립스에 웹 프로젝트를 만들어서 생성하기 위해서는 서버역할을 필요로 하는 WAS(Web Application Serve)가 필요합니다. 이 WAS의 역할을 하는 프로그램이 톰캣(Tomcat), 제우스(JEUS) 가 있는데 오픈소스인 톰캣을 설치하여이클립스 연동하는 방법입니다. 우선 톰캣을 다운로드 받아야 합니다. 아래 링크 클릭하여 웹사이트로 들어가서 톰캣을 다운로드 받아줍니다.http://tomcat.apache.org/ 다운받은 톰캣을 압축을 풀어줍니다. 그 뒤 이클립스에서 프로젝트를 생성하여 줍니다. 프로젝트를 생성한뒤 index.jsp파일을 생성하여 주세요. 톰캣 연동후 보여줄 페이지입니다. index.jsp를 만드셨다면 이제 톰캣을 이클립스에 연동 시켜 줘야합니다. 아래 파란글을 클릭하..

프로그램/Web 2017.09.09

이클립스(eclipse) 설치 방법

이클립스 설치하기 안녕하세요. Mac Os에서 웹개발을 해보기 위해서 이클립스를 설치할려고 합니다. Mac OS의 가장 좋은점은 개발에 최적화 되어있는것이죠. 윈도우에서는 자바를 설치하고 “내 컴퓨터” 고급 설정에서 환경변수 잡는것 등등. . . 귀찮은것 투성이인데 Mac은 간단합니다! 아래 사이트에 링크 클릭하여 접속합니다. https://www.eclipse.org/downloads/? 접속하셔서 밑에 Download 64BIT를 클릭합니다. 아래 사이트에서 Download를 클릭합니다. 다운로드 받은 파일 압축을 푼 뒤 생성된 “Eclipse Installer” 실행합니다. 선택하는 부분에서 아래 빨간 동그라미 부분을 클릭합니다. 그 뒤 INSTALL을 클릭하여 설치만 해주시면 완료가 되었습니다. ..

프로그램/Web 2017.09.08

안드로이드 DatePicker, TimePicker 사용법

안드로이드 DatePicker, TimePicker 사용법입니다. 두 가지다 생성할때 최초 바라보는 값을 넣어줘야 하는데 기본적으로 현재데이터들을 다 넣어줬습니다. 아래 샘플 코드와 샘플 코드로 생성시에 대한 캡처가 있습니다. public class PickerActivity extends Activity { private String TAG = "PickerActivity"; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_picker); init(); } private void init(){ //C..

안드로이드 구글 음성API[SpeechRecognizer tutorial]

구글 음성 API 흔히 적혀있는 SPEECH TO TEXT에 대한 Tutorial 파일입니다. Gradle에 다른 특별한 셋팅은 없네요. 필요한 권한은 인터넷과 오디오 부분입니다. Intent 데이터중에 RecognizerIntent가 있는데 그 데이터들을 셋팅하여 startActivityResult를 사용하여 구글 음성API를 사용하시고 onActivityResult로 데이터를 받아 사용하시면 되겠습니다. public class GoogleActivity extends Activity implements RecognitionListener{ private SpeechRecognizer speech; private Intent recognizerIntent; private final int RESULT_..