web-dev-qa-db-ja.com

Flutter iOS向けGoogleマップSwift設定

公式のGoogle Maps for Flutterプラグインの設定手順には、Google APIキーをAppDelegate.mファイルに追加することが含まれます。

アプリケーションデリゲートios/Runner/AppDelegate.mでAPIキーを指定します。

#include "AppDelegate.h" 
#include "GeneratedPluginRegistrant.h"
#import "GoogleMaps/GoogleMaps.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [GMSServices provideAPIKey:@"YOUR KEY HERE"];
  [GeneratedPluginRegistrant registerWithRegistry:self];
  return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end

私のフラッタープロジェクトには、AppDelegate.mファイルの代わりにAppDelegate.Swiftファイルがあり、構文が異なるため、必要なキーを追加する方法がわかりません。

import UIKit
import Flutter

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?
  ) -> Bool {
    GeneratedPluginRegistrant.register(with: self)
    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }
}

誰か助けてもらえますか?

15
Kretin

次のようにAPIキーを追加できます。

AppDelegate.Swift:

import UIKit
import Flutter
import GoogleMaps // Add this line!

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?
  ) -> Bool {
    GeneratedPluginRegistrant.register(with: self)
    GMSServices.provideAPIKey("YOUR_API_KEY")  // Add this line!
    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }
}

もう1つ、下の行をios/Runner/Info.plistに追加することを忘れないでください

<key>io.flutter.embedded_views_preview</key>
<true/>
10
Navin Kumar