Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- ListView.builder
- AppBar
- Scaffold
- Load Image
- Image.network
- Row Widget
- Flutter 예제
- CrossAxisAlignment
- listview
- HTTP
- Row
- Snackbar
- Hello World
- navigator
- InkWell
- Cached Image
- FutureBuilder
- Column Widget
- flutter
- Flutter 앱 배포
- MainAxisAlignment
- sqlite
- Networking
- WillPopScope
- Flutter Example
- Flutter 강좌
- node.js
- 반석천
- Flutter Tutorial
- ListTile
Archives
- Today
- Total
꿈꾸는 시스템 디자이너
Flutter 강좌 - 화면 켜짐 유지 방법 | 화면 자동 꺼짐 방지 | Always tun on screen 본문
Development/Flutter
Flutter 강좌 - 화면 켜짐 유지 방법 | 화면 자동 꺼짐 방지 | Always tun on screen
독행소년 2019. 9. 18. 14:05Flutter 강좌 시즌2 목록 : https://here4you.tistory.com/149
애뮬레이터를 이용해서 앱을 개발하면 기본적으로 애뮬레이터의 화면이 항상 켜진 상태로 유지된다. 하지만 실제 스마트폰에서 앱을 실행하고 사용자와의 인터랙션이 없으면 일정 시간 이후 화면이 자동으로 꺼지게 된다.
이번 강좌에서는 앱이 실행되는 동안 화면이 자동으로 꺼지는 것을 방지하는 방법에 대해서 알아본다.
Flutter의 기본 기능으로는 불가능 하고 screen이라고 하는 별도의 외부 패키지를 설치해야 한다.
screen 패키지의 정보는 다음의 사이트에서 확인 가능하다. 고맙게도 Android와 iOS 모두에서 사용이 가능하다.
https://pub.dev/packages/screen
새로운 flutter 프로젝트를 생성하고 pubspec.yaml 파일에 scrren 패키지를 추가한다.
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
screen: ^0.0.5 #scrren 패키지 추가
그리고 Android의 AndroidManifest.xml 파일에 퍼미션을 추가한다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.h4u.keep_tun_on_screen">
<application
android:name="io.flutter.app.FlutterApplication"
android:icon="@mipmap/ic_launcher"
android:label="keep_tun_on_screen">
<activity
android:name=".MainActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
android:value="true" />
</activity>
</application>
<!-- 퍼미션 추가 !-->
<uses-permission android:name="android.permission.WAKE_LOCK" />
</manifest>
화면 자동 꺼짐을 방지하는 코드는 다음과 같다.
import 'package:flutter/material.dart';
import 'package:screen/screen.dart';
void main() {
// 항상 화면을 유지하도록 설정
Screen.keepOn(true);
runApp(
MaterialApp(
title: "Keep Screen",
home: Scaffold(
appBar: AppBar(title: Text("Keep Screen")),
body: Center(child: Text("Always Turn On Screen")),
),
),
);
}
화면 자동 꺼짐 방지를 위한 코드는 굉장히 단순한다. 추가한 패키지를 import 하고 main 함수내에서 keepOn 메소드에 true 파라미터를 설정하면 완료된다.
실행화면은 다음과 같다.
Flutter Code Examples 강좌를 추천합니다.
- 제 블로그에서 Flutter Code Examples 프로젝트를 시작합니다.
- Flutter의 다양한 예제를 소스코드와 실행화면으로 제공합니다.
- 또한 모든 예제는 Flutter Code Examples 앱을 통해 테스트 가능합니다.
Flutter Code Examples 강좌로 메뉴로 이동
'Development > Flutter' 카테고리의 다른 글
Flutter 강좌 - 앱 배포하기 1/2 | 배포용 앱 APK 빌드하기 (5) | 2019.10.10 |
---|---|
Flutter 강좌 - 화면 회전 방지 설정법 | 화면 로테이션 방지 | 화면 오리엔테이션 설정 | Screen Orientation (0) | 2019.09.18 |
Flutter 강좌 - 페이지 전환 전에 작업 마무리 하는 법 | WillPopSocop 사용법 | 백버튼 재정의 (5) | 2019.08.20 |
Flutter 강좌2 - 자식 State에서 부모 State를 참조하는 방법 | Global State 사용법 (6) | 2019.08.12 |
Flutter 강좌2 - 스낵바(SnackBar)를 출력하는 다양한 방법 (2) | 2019.08.09 |
Comments