어떻게 Flutter 를 사용 하여 안 드 로 이 드 애플 리 케 이 션 을 발표 합 니까?
10994 단어 Flutter게시 응용 프로그램안 드 로 이 드
안 드 로 이 드 의 응용 자원 설정 은 main/android Manifest.xml 에 설정 되 어 있 으 며 파일 내용 은 다음 과 같 습 니 다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.gesture_demo">
<!-- io.flutter.app.FlutterApplication is an android.app.Application that
calls FlutterMain.startInitialization(this); in its onCreate method.
In most cases you can leave this as-is, but you if you want to provide
additional functionality it is fine to subclass or reimplement
FlutterApplication and put your custom class here. -->
<application
android:name="io.flutter.app.FlutterApplication"
android:label="gesture_demo"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Don't delete the meta-data below.
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
Flutter 에서 생 성 된 파일 은 대부분의 내용 을 그대로 유지 할 수 있 지만 필요 에 따라 수정 할 수 있 도록 권장 합 니 다.구체 적 으로 수정 할 수 있 는 내용 은 다음 과 같다.
속성 명
용도.
설명 하 다.
package
응용 패키지 이름
안 드 로 이 드 가 사용 하 는 유일한 식별 자 는 보통 com.xxxx.xxx 형식 입 니 다.
android:label
디 스 플레이 이름 적용
기본적으로 프로젝트 이름 이 므 로 실제 상황 에 따라 수정 해 야 합 니 다.
android:icon
아이콘 적용
지정 한 아이콘 파일 을 바 꾸 면 됩 니 다.
meta-data
android:name
자원 이름
변경 불가,Flutter 에서 안 드 로 이 드 플러그 인 생 성 에 사용
meta-data
value
자원 값
변경 불가,Flutter 에서 안 드 로 이 드 플러그 인 생 성 에 사용
아이콘 바 꾸 기
안 드 로 이 드 는 Flutter 프로젝트 의 안 드 로 이 드/app/src/main/res 대응 사이즈 디 렉 터 리 에 아이콘 파일 을 적용 할 수 있 도록 다음 크기 의 아이콘 설정 파일 을 제공 합 니 다.
사이즈
아이콘 크기
화면 크기
mipmap-mdpi
48x48
320×480
mipmap-hdpi
72x72
480×800,480×854
mipmap-xhdpi
96x96
1280*720,720p
mipmap-xxhdpi
144x144
1920*1080,1080p
mipmap-xxxhdpi
192x192
3840×2160,4k
시작 페이지 바 꾸 기
Flutter 프로젝트 의 android/app/src/main/drawable 에 있 는 launch 시작 페이지 그림 적용background.xml 설정 파일 에서 기본 값 은 흰색 바탕 이 고 xml 설 문 지 는 다음 과 같 습 니 다.
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:color/white" />
<!-- You can insert your own image assets here -->
<!-- <item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item> -->
</layer-list>
설명 이 떨 어 진 부분 은 시작 페이지 그림 을 설정 할 수 있 습 니 다.일부 기종 의 크기 가 시작 페이지 그림 과 일치 하지 않 기 때문에 시작 페이지 의 배경 색 과 시작 페이지 그림 가장자리 가 일치 하도록 설정 할 수 있 습 니 다.
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- -->
<item android:drawable="@android:color/white" />
<!-- , -->
<item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item>
</layer-list>
접근 권한 설정android/app/src 에 있 는 AndroidManifest.xml(src/profile 폴 더 에 있 는 AndroidManifest.xml 파일 이 아 닌 것 을 주의 하 십시오)파일 에 네트워크,앨범,카메라 등 응용 권한 을 설정 합 니 다.개발 환경 은 android/src/debug 의 AndroidManifest.xml 에 설 정 됩 니 다.다음은 예제 파일 입 니 다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.animation_demo">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application
android:name="io.flutter.app.FlutterApplication"
android:label=" "
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Don't delete the meta-data below.
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
설정 버 전 발표 파라미터android/app/build.gradle 파일 에서 설정 이 올 바른 지 확인 합 니 다.
다음 과 같다.
android {
compileSdkVersion 28
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.animation_demo"
minSdkVersion 16
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
}
이 안 에는 versionCode 와 versionName 이 flutterVersionCode 와 flutterVersionName 에서 도 입 된 것 을 볼 수 있 습 니 다.이 두 변 수 는 build.gradle 에 정의 되 어 있 습 니 다.local.properties 에서 먼저 읽 습 니 다.이 파일 에서 정의 되 지 않 으 면 local Properties 에서 설정 하거나 build.gradle 에서 설정 할 수 있 습 니 다(local.properties 의 값 을 우선 선택 하 십시오).
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
응용 서명 생 성keystore 를 만 듭 니 다.이전에 만 들 었 다 면 key.properties 에 도입 하면 됩 니 다.
# ~/key.jks keystore key.jks ~/
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
힌트 에 따라 비밀번호 와 조직 정 보 를 입력 하면 됩 니 다.
:
:
?
[Unknown]: lag
?
[Unknown]: island-coder
?
[Unknown]: RD
?
[Unknown]: Coder
/ / ?
[Unknown]: Island
/ ?
[Unknown]: CN
CN=lag, OU=island-coder, O=RD, L=Coder, ST=Island, C=CN ?
[ ]: Y
2,048 RSA (SHA256withRSA) ( 10,000 ):
CN=lag, OU=island-coder, O=RD, L=Coder, ST=Island, C=CN
[ /Users/lag/key.jks]
android 디 렉 터 리 에 key.properties 파일 을 만 들 고 키 라 이브 러 리 정 보 를 참조 합 니 다.
storePassword={ } #
keyPassword={ }
keyAlias=key # -alias
storeFile=/Users/lag/key.jks # key.jks
프로필 수정build.gradle 파일 에서 android 에 다음 내용 을 추가 합 니 다.
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile = file(keystoreProperties['storeFile'])
storePassword = keystoreProperties['storePassword']
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}
포장 하 다.프로젝트 디 렉 터 리 에서 다음 명령 을 실행 합 니 다:
flutter build apk
기본적으로 release 패키지 에 따라 생 성 된 apk 는 build.app/outputs/apk/app-relase.apk 에 있 습 니 다.주의 사항
AndroidManifest.xml 파일 을 수정 하면 flutter 패키지 에 캐 시가 존재 할 수 있 습 니 다.이 때 아래 명령 을 실행 하고 캐 시 를 지우 고 다시 포장 하면 됩 니 다.
flutter clean
이상 은 Flutter 를 어떻게 사용 하여 안 드 로 이 드 애플 리 케 이 션 을 발표 하 는 지 에 대한 상세 한 내용 입 니 다.Flutter 가 안 드 로 이 드 애플 리 케 이 션 을 발표 하 는 것 에 관 한 자 료 는 저희 의 다른 관련 글 을 주목 하 시기 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Flutter】DateTime 전월의 일수를 취득한다달의 일수를 취득할 필요가 있어, 의외로 수요 있을까라고 생각했으므로 비망록 정도에 남겨 둡니다. DateTime 날짜에 0을 입력하면 전월 DateTime이 됩니다. 2021년 3월 0일 = 2021년 2월 28일...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.