Windows 전용 플러터 플러그인 구현으로, 개발자가 Windows 애플리케이션에 Google의 장소 검색 및 자동 완성 기능을 통합할 수 있도록 해줍니다. 사용자는 위치를 탐색하고, 장소 세부 정보를 가져오며, Windows에서 실행 중인 플러터 앱 내에서 직접 지오코딩을 수행할 수 있습니다. 이 패키지는 더 넓은 플러터 생태계와 원활하게 작동하도록 설계되었으며, 최적의 성능을 위해 네이티브 Windows 기능을 활용합니다.
사용 사례
윈도우 데스크톱 앱에 장소 자동 완성 통합
Google Places API를 사용하여 위치 검색
Windows 애플리케이션에서 위치 제안 표시
실시간 장소 예측을 통한 사용자 경험 향상
Windows용 여행 또는 물류 앱 개발
주요 기능
네이티브 윈도우 플랫폼 통합
장소 자동 완성 및 세부 정보 검색을 지원합니다
Flutter의 크로스 플랫폼 워크플로우와 호환됩니다
백엔드에서 Google Places API를 사용합니다
경량이며 구성이 간편합니다
적합한 대상
위치 기능을 갖춘 Windows 데스크톱 앱을 개발하는 개발자
Windows에서 Google Places 기능이 필요한 앱
다중 플랫폼 배포를 목표로 하는 Flutter 팀
고려 사항
Google Places API 키 설정이 필요합니다
Windows 플랫폼 전용
API 호출을 위해 인터넷 연결에 의존합니다
생산 배포를 위해 추가 설정이 필요할 수 있습니다
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
flutter_google_places_sdk
A Flutter plugin for google places sdk that uses the native libraries on each platform.
Check out Rational below to understand why you should use this plugin.
Location restriction is not supported. See google issue tracker for more info: https://issuetracker.google.com/issues/36219203
Rational
By now you probably found some other plugins, and wondering why this one was even created.
Well, there's a good reason for that.
All other plugins will use http web requests rather than the native sdk.
Google allows you to limit the usage of your api key to your android application.
However, that only works when you're using the native SDK.
So when using the http web requests method, you can't actually limit it,
and if someone can get your API key (usually not a problem if it's in a mobile client),
it can be used anywhere outside of it.
Example
import'package:flutter/material.dart';
import'package:flutter_google_places_sdk/flutter_google_places_sdk.dart';
voidmain() {
runApp(MaterialApp(
home: Scaffold(
body: Center(
child: ElevatedButton(
onPressed: () async {
final places = FlutterGooglePlacesSdk('my-key');
final predictions =
await places.findAutocompletePredictions('Tel Aviv');
print('Result: $predictions');
},
child: Text('Predict and print to console'),
),
),
),
));
}
Development & Contributing
This is a side project of mine, hence issues are usually dealt with on weekends.
PRs are more than welcome if anyone want to contribute. There are
Contribution Guidelines
General code quality will adhere to new PRs, although nothing too strict. Specifics will discussed in each PRs.
This is a multi-platform plugin, and each package is maintained independently. As part of it, each commit that changes the version is also tagged per platform.
The result is that changes that require multiple packages will require multiple commits - and hence multiple PRs.