Pusher Beams는 Flutter 애플리케이션에 푸시 알림을 통합하기 위한 공식 플러터 플러그인입니다. 개발자들은 안드로이드, iOS, 웹 플랫폼의 사용자에게 타겟팅되고 개인화된 알림을 보낼 수 있습니다. 이 플러그인은 Pusher의 확장 가능한 인프라를 통해 토큰 등록, 구독 관리 및 메시지 전달을 처리하여 실시간 알림 수신 과정을 단순화합니다. 최소한의 설정으로 개발자는 시의적절하고 관련성 있는 알림을 통해 사용자 참여도를 높일 수 있습니다. 이 플러그인은 Pusher에서 유지보수되며, 그들의 Beams 서비스와 원활하게 통합됩니다.
In order to work with this Flutter plugin you must have a Pusher Beams Account and already got an instanceId within your dashboard, you can Sign Up here.
Android Additional
Firebase Account and a google-services.json (follow this guide). Do not initialize anything, this plugin just requires a google-services.json within your android/app folder.
To install this plugin within you Flutter application, you need to add the package into your pubspec.yaml.
dependencies:pusher_beams:^1.0.1
or with flutter pub
flutter pub add pusher_beams
There are some additional steps for some platforms.
Android
Add this line inside your project-level build.gradle which is located at your android folder
buildscript {
// Your config...
repositories {
// Your repositories...
}
dependencies {
// Your dependencies...// Add this line
classpath 'com.google.gms:google-services:4.2.0'
}
}
Now, on your app-level build.gradle you must include com.google.gms.google-services ( google-services.json must be already included within your app as it's a prerequisite). Just add this line at the end of your app-level build.gradle.
apply plugin: 'com.google.gms.google-services'
Web
Create a file called service-worker.js inside your web folder.
If you already have done the prerequisites, now you can initialize Pusher Beams using the start method as soon as possible (Preferable inside the main function).
This repository is following git flow branching model, so in order to contribute, once you fork this project, you must create a fix/ or feature/ branch, which will be pull requested from you once it's ready.
There's two major tests, our app-facing package test which is run as Integration Test and our platform-interface package test run as Unit Test
Integration Tests
For integration tests, we use the example app provided in packages/pusher_beams/example. In order to run the integration tests you must complete the prerequisites in the example app which is...
You already registered into Pusher Beams platform.
If you already double-check the list above, then you must replace the constant instanceId located on packages/pusher_beams/example/integration_test/pusher_beams_test.dart with a real one from Pusher Beams.
// Code...const instanceId = 'your-instance-id'; // Replace this with a real instanceId// More Code...
So that's all! you can now run the integration test with the following command on the example app path (packages/pusher_beams/example):
As this plugin platform interface is generated by Pigeon and if you modified the file messages.dart from packages/pusher_beams_platform_interface package, in order to generate a new MethodChannel interface you must run the following command on path packages/pusher_beams_platform_interface:
classPusherBeamsApiextendsPusherBeamsPlatform{
// Pigeon Generated Class Code
}
This will require you to change the methods onInterestChanges and setUserId parameter arg_callbackId to type dynamic in order to accomplish PusherBeamsPlatform definition like below:
// Class code...Future<void> onInterestChanges(dynamic arg_callbackId) async {
// onInterestChanges generated function code...
}
Future<void> setUserId(String arg_userId, BeamsAuthProvider arg_provider, dynamic arg_callbackId) async {
// setUserId generated function code...
}
// More class code...
License
Copyright (c) 2015 Pusher Ltd. See LICENSE for details.