Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ios
- smoothing
- complie
- fd3
- FlashDevelop
- red5
- FLV Player
- javascript
- SWFObject
- android studio
- FLVPlayback
- debuger
- Demo
- papervision3d
- ExteranlInterface
- Lifefilm
- publish setting
- 가로
- 비트맵리사이즈
- 단말 테스트
- flashplayer
- cocos2d-x
- os x
- ubuntu touch
- Movieplayer
- Alpha
- wireless keyboard
- Renewal
- flash
- TweenMax
Archives
- Today
- Total
ALL ABOUT ME
Android :: 무조건 날짜 및 시간 설정을 자동으로... 본문
얼마전 앱 제한(?)을 두기 위해 시간을 체크를 하여 날짜 및 시간이 되면 앱이 동작되지 않게 할 일이 있었다.
머...트라이얼 버젼이라고 해야 할까... 아무튼...
문제는 디바이스 장치의 현재 시간을 체크하는 부분인데...
사용자가 설정에서 사용자 시간으로 강제로 변경해 버리면 무용지물이다...
그래서 타임서버를 이용해서 시간을 체크... 그것도 결국 사용자가 통신을 차단하면 무용지물이다...
하지만 방법은 다 있기 마련....
사용자가 강제로 시간을 변경했다면.... 앱에서 다시 강제로 자동시간으로 변경하면 되는것..ㅋㅋㅋ
날짜 & 시간을 자동(네트워크 제공 값 사용)으로 변경하는 코드
시간 변경 Broadcast를 등록해야 한다..
Intent.ACTION_TIME_CHANGED
Broadcast를 등록하고 따로 처리하는것은 없지만 등록하지 않으면 자동으로 변경하고 나서 시간을 가져와도 그대로이다.
이유는 잘 모르겠다...
FULL CODE
AndroidManifest.xml 퍼미션 추가!!
- 설정을 읽고 쓰기 위해...
MainActivity.xml
머...트라이얼 버젼이라고 해야 할까... 아무튼...
문제는 디바이스 장치의 현재 시간을 체크하는 부분인데...
사용자가 설정에서 사용자 시간으로 강제로 변경해 버리면 무용지물이다...
그래서 타임서버를 이용해서 시간을 체크... 그것도 결국 사용자가 통신을 차단하면 무용지물이다...
하지만 방법은 다 있기 마련....
사용자가 강제로 시간을 변경했다면.... 앱에서 다시 강제로 자동시간으로 변경하면 되는것..ㅋㅋㅋ
날짜 & 시간을 자동(네트워크 제공 값 사용)으로 변경하는 코드
Settings.System.putInt(getContentResolver(), Settings.System.AUTO_TIME, 1)하지만 위 코드 하나만으로 변경되지 않는다... OTL
시간 변경 Broadcast를 등록해야 한다..
Intent.ACTION_TIME_CHANGED
Broadcast를 등록하고 따로 처리하는것은 없지만 등록하지 않으면 자동으로 변경하고 나서 시간을 가져와도 그대로이다.
이유는 잘 모르겠다...
FULL CODE
AndroidManifest.xml 퍼미션 추가!!
- 설정을 읽고 쓰기 위해...
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission> <uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission> <uses-permission android:name="android.permission.READ_SYNC_SETTINGS"></uses-permission>
MainActivity.xml
private BroadcastReceiver mIntentReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // 처리 안함 } }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 날짜 & 시간 설정을 자동으로... Settings.System.putInt(getContentResolver(), Settings.System.AUTO_TIME, 1); } @Override protected void onPause() { super.onPause(); unregisterReceiver(mIntentReceiver); } @Override protected void onResume() { super.onResume(); IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_TIME_CHANGED); registerReceiver(mIntentReceiver, filter, null, null); }
'Lab' 카테고리의 다른 글
WindowPhone 7 :: Getting Start (0) | 2011.04.25 |
---|---|
Android :: 에뮬레이터 내부 용량 설정 (0) | 2011.04.12 |
Eclipse :: LogCat 에러 - Could not create the view: For input string: "" (0) | 2011.04.01 |
Android :: 안드로이드 폰 화면을 PC에서 보기 (안드로이드 스크린케스트) (0) | 2011.01.18 |
Android :: Title bar, Fullscreen (0) | 2010.12.29 |
Comments