본문 바로가기

Development

[Android] GPS 설정 체크하기 [ Android GPS Check ] public boolean checkGPSService() { LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); if (!manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { // GPS OFF 일때 Dialog 표시 new MaterialDialog.Builder(this) .title("위치 서비스 설정") .content("위치 서비스 기능(GPS)을 설정해주세요.") .positiveText("확인") .onPositive(new MaterialDialog.SingleButtonCallback() { .. 더보기
[Android] Volley & Patch request [ Android Patch request ] 1. HttpPost의 Header에 X-HTTP-Method-Override 추가 httpost.setHeader("X-HTTP-Method-Override", "PATCH"); 2. 위 1번 방법이 되지 않을 경우 okHttp 활용(Android Studio 기준) I) build.gradle에 library 추가 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) ... compile 'com.squareup.okhttp3:okhttp:3.2.0' compile 'com.squareup.okhttp3:okhttp-urlconnection:3.2.0' } II) CustomHttpStack .. 더보기
[Android] Activity Life Cycle(생명주기) ⊙ Activity Life Cycle (액티비티 생명주기) : Activity에는 Life Cycle이 존재한다. Life Cycle은 아래 그림과 같다. * 각 함수들의 설명 Method Description Killable? Next onCreate() Activity가 처음 만들어질 때 호출되는 함수. 보통 create view, bind data to list 등을 onCreate()에서 한다. 그리고 이전 상태를 포함한 Bundle을 제공한다. No onStart() onRestart() Activity가 다시 시작되기 전에 Activity가 멈춘 후 호출되는 함수. No onStart() onStart() Activity가 User에게 보여질 때 호출되는 함수. No onResume() or.. 더보기
[Android] 외부 앱 실행 [Android] 외부 앱 실행 앱 정보 얻어오기 12345678910Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); // package Infomation PackageManager pm = getPackageManager(); // 설치되어 있는 App 정보 List installedApps = pm.queryIntentActivities(intent, 0); for(ResolveInfo app : installedApp) { Log.i("App Info : ", app.activityInfo.packageName); } 외부 앱 실행시키기 실행시킬 앱의 Activity Name까지.. 더보기
[Android] Android Soft KeyBoard Show and Hide [Android] Android Soft KeyBoard Show and Hide Android 키보드 보이기 12345private void showKeyBoard() { EditText editText = ...; InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInputFromInputMethod (editText.getApplicationWindowToken(), InputMethodManager.SHOW_FORCED); } Android 키보드 감추기 12345private void hideKeyBoard() { EditText editText = ...;.. 더보기
[Android] ScrollView 안에 ListView height 지정 [Android] ScrollView안에 ListView를 넣는 경우 ScrollView 안에 ListView를 넣을 경우 ListView의 높이가 지정이 되지 않는 경우가 있다. ScrollView와 ListView 둘 다 vertical scroll를 가지고 있기 때문에 꼬이는 현상이 일어나 ListView의 높이가 원하는대로 지정되지 않는다. 12345678 Android Developer You should never use a ScrollView with a ListView, because ListView takes care of its own vertical scrolling. Most importantly, doing this defeats all of the important optimiz.. 더보기
[Android] 날짜 출력하기(현재 날짜, 날짜 비교 등등) [Android] 날짜 출력 날짜를 출력하기 위해서는 format을 맞추어야 한다 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485public class DateUtils { public static final String DATEFORMAT_DEFAULT = "yyyy-MM-dd HH:mm:ss"; /** [현재 시간] **/ public static Date getCurrentTime() { long now = System.currentTimeMillis(); re.. 더보기
[Android] 정규식으로 형식 필터(이모티콘, 이메일) [Android] EditText Filter 주로 EditText에서 사용되는 필터 Emoji Filter(이모티콘 필터) 123456789101112131415161718192021private EditText editText ; public void onCreate(Bundle savedInstanceState) { ... editText.setFilters(new InputFilter[]{specialCharacterFilter}); } /** 이모티콘이 있을경우 "" 리턴, 그렇지 않을 경우 null 리턴 **/ private InputFilter specialCharacterFilter = new InputFilter() { public CharSequence filter(CharSequenc.. 더보기