-
글쓴이글
-
2023년 1월 5일 18:03 #61217
오명석참가자강사님이 만들어 놓으신 showNotification( ) 를 사용하면 위와같이 " ios : iosDetails " 에서 애러가 나는데, 도저히 원인을 모르겠어서 질문 올립니다. 제가 바꾼것은 IOSNotificationDetails( ) --> DarwinInitializationSettings( ) 변경되었다하여(구글링에서) 바꾼것 밖에 없습니다. 그리고, 작년에 강의를 구입하여 공부하다 일 때문에 한참을 못보다 다시 들어와서 공부중인데, 남은 강의일수가 7일 밖에 안됩니다. 이제 좀 집중해서 공부할 여건이 되었는데, 강의수강일수 좀 연장이 가능한지 질문드립니다. 수고하세요~
2023년 1월 6일 13:51 #61325
오명석참가자위에 업로드한 스샷을 보시면 , NotificationDetails( android: androidDetails, ios: iosDetails ) 에서 iosDetails 가 에러가 납니다. 오류메시지 --> The argument type 'DarwinInitializationSettings' can't be assigned to the parameter type 'DarwinNotificationDetails?'.
2023년 1월 6일 15:42 #61344
codingapple키 마스터https://github.com/MaikuB/flutter_local_notifications/blob/master/flutter_local_notifications/example/lib/main.dart 신버전 예시 보니까 const DarwinNotificationDetails darwinNotificationDetails = DarwinNotificationDetails( categoryIdentifier: darwinNotificationCategoryText, ); const NotificationDetails notificationDetails = NotificationDetails( android: androidNotificationDetails, iOS: darwinNotificationDetails, macOS: darwinNotificationDetails, ); 이러면 된다는군요
2023년 3월 9일 20:11 #71654
박상용참가자샘 댓글이 전혀 도움이 안되고 있습니다. 위 문장을 어디에 붙여넣으라는 겁니까? 깃허브에 링크들어가도 장문의 코드만 보이는데;; 답을 알려주십시오!!!
2023년 3월 10일 21:38 #71805
박상용참가자flutter_local_notifications: ^9.4.0
import 'dart:ui'; import 'package:provider/provider.dart'; import 'package:flutter_local_notifications/flutter_local_notifications.dart';
final notifications = FlutterLocalNotificationsPlugin();
//1. 앱로드시 실행할 기본설정 initNotification() async {
//안드로이드용 아이콘파일 이름 var androidSetting = AndroidInitializationSettings('app_icon');
//ios에서 앱 로드시 유저에게 권한요청하려면 var iosSetting = IOSInitializationSettings( requestAlertPermission: true, requestBadgePermission: true, requestSoundPermission: true, );
var initializationSettings = InitializationSettings( android: androidSetting, iOS: iosSetting ); await notifications.initialize( initializationSettings, //알림 누를때 함수실행하고 싶으면 //onSelectNotification: 함수명추가 ); }
//2. 이 함수 원하는 곳에서 실행하면 알림 뜸 showNotification() async {
var androidDetails = AndroidNotificationDetails( '유니크한 알림 채널 ID', '알림종류 설명', priority: Priority.high, importance: Importance.max, color: Color.fromARGB(255, 255, 0, 0), );
var iosDetails = IOSNotificationDetails();
// 알림 id, 제목, 내용 맘대로 채우기 notifications.show( 1, '제목1', '내용1', NotificationDetails(android: androidDetails, iOS: iosDetails) ); } 이렇게 하니깐 잘 작동하네요. 감사합니다.
2023년 6월 20일 17:38 #87758
임정환참가자혹시라도 저처럼.. 고민하셨던 분들 도움되시길 바랍니다. var iosSetting = IOSInitializationSettings(.....이건 아래와 같이 var iosSetting = DarwinInitializationSettings( var iosDetails = IOSNotificationDetails(..... 이건 아래와 같이ㅏ var iosDetails = DarwinNotificationDetails chat gpt 랑도 상의해봐도 최신버젼깔라하고 ㅜㅜ 별거 다 해보다 검색만.. 수십..개.. 그중 하나 나오네요 https://stackoverflow.com/questions/73823706/the-method-iosinitializationsettings-isnt-defined-using-local-notification-pl
2023년 12월 2일 00:11 #105668
박도영참가자파베 연동하고 임정환님 뽕받아서 저도 대댓글 풀소스 남깁니다 // 이건 해당 버전 flutter_local_notifications: ^11.0.0 // notification.dart
import 'package:flutter/material.dart'; import 'package:flutter_local_notifications/flutter_local_notifications.dart'; import 'package:timezone/data/latest_all.dart' as tz; import 'package:timezone/timezone.dart' as tz; // 해당 유저 알림 시간 정하기
final notifications = FlutterLocalNotificationsPlugin();
//1. 앱로드시 실행할 기본설정 initNotification() async { //안드로이드용 아이콘파일 이름 var androidSetting = AndroidInitializationSettings('app_icon');
//ios에서 앱 로드시 유저에게 권한요청하려면 var iosSetting = DarwinInitializationSettings( requestAlertPermission: true, requestBadgePermission: true, requestSoundPermission: true, );
var initializationSettings = InitializationSettings(android: androidSetting, iOS: iosSetting); await notifications.initialize( initializationSettings, //알림 누를때 함수실행하고 싶으면 //onSelectNotification: 함수명추가 // onSelectNotification: (payload) { // Navigator.push( // context, // MaterialPageRoute( // builder: () => Text('새로운 페이지'), // ), // ); ); }
//2. 이 함수 원하는 곳에서 실행하면 알림 뜸 showNotification() async { var androidDetails = AndroidNotificationDetails( '유니크한 알림 채널 ID', '알림종류 설명', priority: Priority.high, importance: Importance.max, color: Color.fromARGB(255, 255, 0, 0), ); // presentAlert: true, // presentBadge: true, // presentSound: true, var iosDetails = const DarwinNotificationDetails ( presentAlert: true, presentBadge: true, presentSound: true, );
// 알림 id, 제목, 내용 맘대로 채우기 notifications.show( 1, // 개별 알림의 ID 숫자 '안녕하세요 제목이에요', '알림띄우기 성공~!', NotificationDetails(android: androidDetails, iOS: iosDetails)); // payload: '부가정보'; }
// 특정 시간에 알림 띄우기 showNotification2() async {
tz.initializeTimeZones();
var androidDetails = const AndroidNotificationDetails( '유니크한 알림 ID', '알림종류 설명', priority: Priority.high, importance: Importance.max, color: Color.fromARGB(255, 255, 0, 0), ); var iosDetails = DarwinNotificationDetails( presentAlert: true, presentBadge: true, presentSound: true, );
notifications.zonedSchedule( // 알림을 원하는 시간에 띄워줌 2, '제목2', '내용2', // RepeatInterval.daily 해당 메일 알림 tz.TZDateTime.now(tz.local).add(Duration(seconds: 3)), // 폰의 현재시간 + 3초 // tz.TZDateTime.now(tz.local).add(Duration(seconds: 5)), // 시간 입력하면 이 시간에 알림 뜸 NotificationDetails(android: androidDetails, iOS: iosDetails), androidAllowWhileIdle: true, uiLocalNotificationDateInterpretation: UILocalNotificationDateInterpretation.absoluteTime, matchDateTimeComponents: DateTimeComponents.dayOfMonthAndTime // 매일 같은 시간에 알림 띄워 줌 time // dayOfMonthAndTime 월요일마다! ); } // makeDate(8,30,0) // 오늘 8시 30분.. // 매일 7 시 알림 makeDate(hour, min, sec){ var now = tz.TZDateTime.now(tz.local); var when = tz.TZDateTime(tz.local, now.year, now.month, now.day, hour, min, sec); if (when.isBefore(now)) { return when.add(Duration(days: 1)); } else { return when; } }
-
글쓴이글
- 답변은 로그인 후 가능합니다.