답변:
안드로이드 앱 이름
AndroidManifest.xml
파일 에서 레이블 이름을 변경 하십시오.
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
패키지 이름
AndroidManifest.xml
파일 에서 패키지 이름을 변경 하십시오.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
또한 build.gradle
앱 폴더 내의 파일
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
마지막으로 MainActivity.java
클래스 에서 패키지를 변경하십시오 (MainActivity.java를 사용할 수없는 경우 MainActivity.kt를 확인하십시오)
package your.package.name;
import android.os.Bundle;
import io.flutter.app.FlutterActivity;
import io.flutter.plugins.GeneratedPluginRegistrant;
public class MainActivity extends FlutterActivity {
디렉토리 이름을 변경하십시오.
에서:
android\app\src\main\java\com\example\name
에:
android\app\src\main\java\your\package\name
편집 : 27-Dec-18
에 대한 패키지 이름 만 빌드에서 변경 build.gradle
만
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
iOS의 경우
디렉토리 Info.plist
내의 파일 에서 번들 ID를 변경하십시오 ios/Runner
.
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
최신 정보
패키지 및 번들 식별자의 이름을 바꾸지 않으려면 터미널에서이 명령을 사용하여 프로젝트를 시작할 수 있습니다.
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER)
입니다. 그 변수는 어디에 숨어 있습니까?
수동으로 이름을 변경해도 작동하지 않는 것처럼 보이고 gradle 오류가 발생합니다. 제 경우에는 오류가 발생합니다.
그래서 나는 보통 새로운 플러터 프로젝트를 만듭니다.
아래에 언급 된 명령을 사용하여 새 flutter 앱을 만듭니다.
flutter create --org com.yourdomain appname
프로젝트의 패키지 이름은-> com.yourdomain.appname
패키지 이름을 그대로 유지하려면 com.appname
다음과 같이 변경하십시오.
flutter create --org com appname
add 대신 Java kotlin
를 android
추가하려면-a java
flutter create -a java --org com.yourdomain appname
Android에서 패키지 이름은 AndroidManifest에 있습니다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
iOS에서 패키지 이름은 Info.plist의 번들 식별자입니다.
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
이는에서 발견된다 Runner.xcodeproj / project.pbxproj :
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
패키지 이름은 둘 이상의 위치에 있으므로 이름을 변경하려면 전체 프로젝트에서 이전 프로젝트 이름의 발생을 검색하여 모두 변경해야합니다.
Android Studio 및 VS 코드 :
iOS에 대한 도움 을 주신 diegoveloper 에게 감사드립니다 .
이 페이지로 몇 번 다시 돌아온 후 올바른 이름으로 새 프로젝트를 시작한 다음 이전 파일을 복사하는 것이 더 쉽고 깨끗하다고 생각합니다.
특정 파일을 변경하고 싶지 않은 사람들은 https://pub.dev/packages/rename을 사용했습니다 .
설치 : pub global activate rename
그런 다음 다음을 실행하십시오. pub global run rename --bundleId com.example.android.app --target android
이것이 내가 iOS와 안드로이드 용 패키지의 이름을 바꾸는 방법입니다
applicationId "com.company.name"
app/src/main
하고 이름을 변경 package="com.company.name"
하고android:label="App Name"
app/src/debug
이름을 바꿉니다.package="com.company.name"
app/src/profile
이름을 바꿉니다.package="com.company.name"
app/src/main/kotlin/com/something/something/MainActivity.kt
이름 바꾸기package="com.company.name"
app/src/main/kotlin/
구조가 보이도록 각 디렉토리로 이동하여 이름을 바꿉니다.app/src/main/kotlin/com/company/name/
pubspec.yaml
프로젝트 및 변화 name: something
에 name: name
예를 들어, : - 패키지 이름 인 경우com.abc.xyz
name: xyz
com.company.name
flutter clean
https://developer.android.com/studio/build/application-id.html :이 공식 문서를 따를 수 있습니다
패키지 이름은 AndroidManifest.xml에서 변경할 수있는 반면 애플리케이션 ID는 Build.gradle에서 변경되어야합니다.
그러나 패키지 이름을 신중하게 변경해야합니다.
또한 앱을 다시 업로드하는 동안 이전에 업로드 한 앱의 애플리케이션 ID가 새 업로드와 일치하므로주의해야합니다.
내 대답이 정답으로 받아 들여지지 않더라도 위의 모든 대답으로 인해 더 많은 문제가 발생했다고 생각합니다.
결론 : 간단한 찾기 및 바꾸기 프로그램이이 문제를 해결하는 데 필요한 전부이므로 Sublime Text 3을 강력히 권장합니다.