web-dev-qa-db-ja.com

ローカル通知フラッター

誰でも、ローカル通知プラグインを使用してフラッターで通知をスケジュールする方法を示すコードを教えてもらえますか? gitリポジトリの例を試してみましたが、通常の通知は機能していますが、私には機能しませんが、リマインダーのように特定の時間にスケジュールするにはどうすればよいですか?

3
Sarthak Solanki

プラグインサンプルコード から通知をスケジュールする場合は、次のようなコードを使用する必要があります。

/// Schedules a notification that specifies a different icon, sound and vibration pattern
  Future _scheduleNotification() async {
    var scheduledNotificationDateTime =
        new DateTime.now().add(new Duration(seconds: 5));
    var vibrationPattern = new Int64List(4);
    vibrationPattern[0] = 0;
    vibrationPattern[1] = 1000;
    vibrationPattern[2] = 5000;
    vibrationPattern[3] = 2000;

    var androidPlatformChannelSpecifics = new AndroidNotificationDetails(
        'your other channel id',
        'your other channel name',
        'your other channel description',
        icon: 'secondary_icon',
        sound: 'slow_spring_board',
        largeIcon: 'sample_large_icon',
        largeIconBitmapSource: BitmapSource.Drawable,
        vibrationPattern: vibrationPattern,
        color: const Color.fromARGB(255, 255, 0, 0));
    var iOSPlatformChannelSpecifics =
        new IOSNotificationDetails(sound: "slow_spring_board.aiff");
    var platformChannelSpecifics = new NotificationDetails(
        androidPlatformChannelSpecifics, iOSPlatformChannelSpecifics);
    await flutterLocalNotificationsPlugin.schedule(
        0,
        'scheduled title',
        'scheduled body',
        scheduledNotificationDateTime,
        platformChannelSpecifics);
  }

あなたが集中しなければならない部分はそれです:

// Schedule a notification in 5 secs from now
var scheduledNotificationDateTime =
        new DateTime.now().add(new Duration(seconds: 5));

通知を表示するために行うネイティブプロジェクトの設定がわからない場合は、プラグインリポジトリを複製してその例を試すことをお勧めします。

///重要:次のコードを単独で実行しても、各プラットフォームヘッドプロジェクトに必要な設定があるため機能しません。

///すべての設定が完了したGitHubリポジトリから完全なサンプルアプリをダウンロードしてください

3
shadowsheep