ByBug Laboratuvarı

  • Flutter’da OneSignal ile Bildirim Göndermek

    NOT: Bu döküman boyunca bir hata ile karşılaşacak olursanız, dökümanın sonunda yer alan ‘UYARILAR’ alt başlığını kontrol edin.

    1. Flutter Uygulamanıza OneSignal’ı Entegre Edin

    OneSignal Flutter paketi için aşağıdaki adımları takip edin:

    • Paketi eklemek için şu komutu çalıştırın: flutter pub add onesignal_flutter
    • OneSignal üzerinden bir hesap oluşturun ve uygulamanızın bilgileriyle entegrasyon işlemini gerçekleştirin.
    • OneSignal’in size verdiği appId’yi kopyalayın ve aşağıdaki gibi main.dart dosyanızda ekleyin:
    
        import 'package:onesignal_flutter/onesignal_flutter.dart';
    
        void main() {
            OneSignal.initialize("");
        }
        

    2. Uygulama İçinden Bildirim Gönderme

    Aşağıdaki kod ile tüm kullanıcılara bildirim gönderebilirsiniz:

    
        import 'package:dio/dio.dart';
        import 'dart:convert';
    
        Future sendNotificationToAll(String message) async {
            final dio = Dio();
            final body = jsonEncode({
                'app_id': '',
                'android_small_icon': "ic_stat_onesignal_default",
                'included_segments': ['All'],
                'contents': {'en': message},
            });
    
            try {
                final response = await dio.post(
                    'https://onesignal.com/api/v1/notifications',
                    data: body,
                    options: Options(
                        headers: {
                            'Content-Type': 'application/json; charset=utf-8',
                            'Authorization': 'Basic ',
                        },
                    ),
                );
            } catch (e) {
                print("Hata: $e");
            }
        }
        

    3. Bildirim İkonunu Özelleştirme

    Bildirim ikonunu kişiselleştirmek için şu adımları takip edin:

    • Notification Icon Generator kullanarak bir ikon oluşturun.
    • İndirilen dosyaları \android\app\src\main\res\ klasörüne ekleyin.
    • AndroidManifest.xml dosyasına aşağıdaki kodu ekleyin:
    
    <meta-data
    android:name="com.onesignal.messaging.default_notification_icon"
    android:resource="@drawable/ic_stat_onesignal_default"/>
        

    UYARILAR

    Eğer hatalar ile karşılaşırsanız, aşağıdaki çözümleri uygulayın:

    Hata 1 – SDK Uyumsuzluğu

    compileSdkVersion sürümünüzü 33 olarak ayarlayın:

    
        android {
            compileSdkVersion 33
        }
        

    Hata 2 – Multidex Hatası

    64K metod sınırını aşmamak için aşağıdaki bağımlılığı ekleyin:

    
        dependencies {
            implementation 'com.android.support:multidex:2.0.1'
        }
        

    Tümü bu kadardı. Zevkli kodlamalar!

  • Hello world!

    Welcome to WordPress. This is your first post. Edit or delete it, then start writing!