Jump to content
JG:RP sedang menjadi korban serangan DDoS dengan skala besar. Kami masih menunggu balasan dari pihak provider terkait serangan ini. ×

[DISKUSI] Flutter.


BabiHutan

Recommended Posts

Posted

Jadi gua ada kasus app yang mengharuskan block notifikasi, disable android navigation (back, home, recent apps) & status bar, overlay on top, dll, yang bertujuan agar app tersebut gabisa di close, semacam CBT gitu. Disini gua kesulitan buat akses hal-hal tersebut karena belom pernah nyoba, dan udah cari sana sini ga ketemu, kali aja ada yang udah expert di Flutter bisa kasih pencerahan.

 

Thread ini juga bisa digunakan untuk kalian diskusi tentang Flutter/Dart lang. Silahkan berdiskusi 🙂 

Posted

Ini menurut aku pribadi btw... Kalo kamu mau ngunci notifikasi dan disable tombol navigasi di aplikasi Android pake Flutter, kamu bisa pake plugin Flutter yang namanya "flutter_windowmanager". Cara pakenya juga simpel kok:

 

1. Tambahin plugin "flutter_windowmanager" di file pubspec.yaml.

2. Run 'flutter pub get' biar plugin terinstal.

3. Kalo mau ngunci notifikasi, pake kode berikut:

import 'package:flutter_windowmanager/flutter_windowmanager.dart';

await FlutterWindowManager.addFlags(FlutterWindowManager.FLAG_SECURE);

4. Kalo mau disable tombol navigasi, pake kode berikut:

import 'package:flutter_windowmanager/flutter_windowmanager.dart';

await FlutterWindowManager.addFlags(
  FlutterWindowManager.FLAG_LAYOUT_NO_LIMITS |
  FlutterWindowManager.FLAG_FULLSCREEN |
  FlutterWindowManager.FLAG_TRANSLUCENT_NAVIGATION |
  FlutterWindowManager.FLAG_TRANSLUCENT_STATUS,
);
 

Yhh .. kejadian ini kuran lebih mirip sama dulu aku alamin, ya kurang lebih kayak gini lah.

Tapi inget ya, plugin ini harus dipake hati-hati dan cuma buat kasus yang perlu aja, contohnya kyk CBT yang kamu sebutin. Ada beberapa batasan plugin ini yang bisa ngaruh performa dan keselamatan perangkat, jadi sebaiknya diuji dulu sebelum dipake di proyek besar. Semoga membantu!

  • Top 1
Posted
On 2/17/2023 at 7:57 PM, CORRUPT said:

Kalo mau disable tombol navigasi, pake kode berikut:

Sori baru bales bang, baru sempet nyoba soalnya, dan gua engga dapet hasil yang gua ingin di point-point yang abang sampaikan.

Pertama, plugin tersebut cuma nyembunyiin status bar & navigasi androidnya, jadi user masih bisa munculin lagi nih status bar sama navigasi tersebut. Di kasus gua ini, si navigasi sama status bar itu tadi kudu bener-bener gabisa dipakai atau fungsinya mati, dan gua kesusahan disitu wkwkwk. 

Ini cakupan kasus yang harus gua selesain:

  1. Disable screenshot (clear).
  2. Disable dual screen (clear).
  3. Disable navigator (blm clear).
  4. Hide navigator, status bar, notification. (clear)
  5. Force the flutter app to open while user switch to another app or page (ini blm selesai juga wkwkwk).

Nah, di point nomer 5 itu, kayanya bisa manfaatin ini flutter_overlay_window dengan cara request permission buat overlay, jadi nanti app gua ada di stack paling atas. Yang gua butuhin disitu, jika usernya ganti dari flutter app tersebut ke app lain, android bakal maksa buat kembali ke flutter appnya dengan rentan waktu detik yang gua tentuin (app yang dipilih tadi masih berjalan, cuman dibawah flutter app gua), kira-kira ada solusinya lagi ga ya @CORRUPT? Makasih sebelomnya kwakwkakwka. 

Posted

Hemmm.... Untuk bikin tombol kembali (back button) di aplikasi Flutter ga bisa dipencet, kamu bisa pakai kode WillPopScope dan kasih fungsi kosong pas tombol back ditekan. Jadi aplikasi ga bakal keluar atau tertutup kalo tombol back ditekan.

Nah, buat bikin aplikasi Flutter tetep terbuka kalo kamu beralih ke aplikasi atau halaman lain, kamu bisa pake plugin bernama flutter_overlay_window. Kamu harus tambahin dependencynya dulu di file pubspec.yaml.

 

Setelah itu, bikin instance dari kelas OverlayWindow dan panggil metode insertOverlayEntry buat tambahin overlay window di aplikasi. Ini bakal bikin aplikasi tetep terbuka kalo kamu beralih ke aplikasi lain.

 

Tapi kalo kamu mau memaksa pengguna buat balik ke aplikasi Flutter setelah beralih ke aplikasi lain, kamu bisa pake MethodChannel buat manggil fungsi moveTaskToFront di package android.os. Ini bakal memaksa pengguna buat balik ke aplikasi Flutter setelah beralih ke aplikasi lain.

Posted
2 hours ago, CORRUPT said:

WillPopScope

Oke, untuk yang ini udah gua gunain beberapa kali di masa lampau, tapi buat 2 point yang kau kutip,

2 hours ago, CORRUPT said:

insertOverlayEntry

ini,

 

2 hours ago, CORRUPT said:

MethodChannel buat manggil fungsi moveTaskToFront di package android.os.

dan ini, gua belum bisa paham sampe sekarang wkwkwkw. Mungkin ada source yang lebih lengkap di 2 kasus tersebut bang?

 

Pluggin flutter_overlay_window pada class FlutterOverlayWindow itu gada method insertOverlayEntry, dan gua gabisa implement hal itu. Terus untuk method moveTaskToFront ini juga naruhnya dimana wkekwkekw

Posted
34 minutes ago, BabiHutan said:

Oke, untuk yang ini udah gua gunain beberapa kali di masa lampau, tapi buat 2 point yang kau kutip,

ini,

 

dan ini, gua belum bisa paham sampe sekarang wkwkwkw. Mungkin ada source yang lebih lengkap di 2 kasus tersebut bang?

 

Pluggin flutter_overlay_window pada class FlutterOverlayWindow itu gada method insertOverlayEntry, dan gua gabisa implement hal itu. Terus untuk method moveTaskToFront ini juga naruhnya dimana wkekwkekw

Pusing uga jelasin pake text 🗿

Plugin flutter_overlay_window gak punya method insertOverlayEntry tapi ada method showOverlay yang bisa dipakai buat nampilin widget overlay di atas aplikasi atau widget lainnya.

 

Lalu ada method moveTaskToFront yang bukan bagian dari flutter_overlay_window, tapi dari package android.os. Method ini bisa dipakai buat geser task (activity) ke depan pada stack aktivitas biar muncul di layar.

 

Untuk make method moveTaskToFront di Flutter, bisa pakai package flutter/services dan panggil MethodChannel buat akses method native (Android atau iOS). Di Android, akses package android.os dan panggil method moveTaskToFront buat geser task ke depan.

 

Lebih jelasnya, bisa cari dokumentasi resmi plugin atau package yang dipakai dan contoh implementasi dari komunitas Flutter... 

Posted
On 2/20/2023 at 12:54 AM, CORRUPT said:

Pusing uga jelasin pake text 🗿

Plugin flutter_overlay_window gak punya method insertOverlayEntry tapi ada method showOverlay yang bisa dipakai buat nampilin widget overlay di atas aplikasi atau widget lainnya.

 

Lalu ada method moveTaskToFront yang bukan bagian dari flutter_overlay_window, tapi dari package android.os. Method ini bisa dipakai buat geser task (activity) ke depan pada stack aktivitas biar muncul di layar.

 

Untuk make method moveTaskToFront di Flutter, bisa pakai package flutter/services dan panggil MethodChannel buat akses method native (Android atau iOS). Di Android, akses package android.os dan panggil method moveTaskToFront buat geser task ke depan.

 

Lebih jelasnya, bisa cari dokumentasi resmi plugin atau package yang dipakai dan contoh implementasi dari komunitas Flutter... 

Gatau dah gua udah pusing wkwkwkwk, intinya harus nambahin method di MainActivity.kt nya, jadi gua perlu belajar lagi tentang Kotlin dan API Android itu sendiri hadeh.

 

Untuk masalah ini sudah solved walaupun ga ngehandle semuanya, intinya kalian yang ngalamin masalah yang sama, oprek-oprek aja dah itu MainActivity-nya. Thread ini saya ubah jadi diskusi untuk Flutter atau seputar Mobile App, yang mungkin ada masalah seputar hal itu bisa dicurahkan disini siapa tau saya atau teman-teman lainnya bisa bantu. Selamat berdiskusi!!!

  • BabiHutan changed the title to [DISKUSI] Flutter, RN, Mobile App, dan sejenisnya.
  • 2 weeks later...
Posted
On 2/23/2023 at 4:38 PM, CORRUPT said:

Wkwkwkw pusing juga jelasin pake text

Udah pernah mainan flutter_webview bang?

Nah gua ada masalah nih, jadi gua ada buat login page sendiri di flutter app, terus udah dapet token/sessionId nya dan pengen ku sambungin ke webviewnya, ada saran atau mungkin jalan keluar buat masalah ini?

Gua udah ngutek-utek bagian cookie managernya, set cookie dan lain-lain masih tetep ga jalan, atau gatau gua salah kodenya apa gimana.

Bentuk cookie nya kaya begini:

 

Spoiler

spacer.png

 

Nah, cookienya ini httponly, gua bisa intercept cookie tersebut cuma via post method (nanti diambil response nya). Nah karena si webview ini pake javascript buat nge get cookienya, jadinya ke block dan ga nampilin apa-apa. Terus, gua bikin login page sendiri kaya yang gua bilang diatas, dan berhasil dapetin si token/session id ini. Gimana caranya gua nyambungin atau nge set cookie dari login page flutter app gua ke webview nya?

  • 3 weeks later...
Posted

Izin tanya bang, Flutter dengan React Native kira2 lebih banyak mana komunitasnya? karena kebetulan lagi pengen coba terjun ke mobile

Posted
2 hours ago, Ponpon said:

Izin tanya bang, Flutter dengan React Native kira2 lebih banyak mana komunitasnya? karena kebetulan lagi pengen coba terjun ke mobile

Kalau komunitas dan lainnya sudah jelas lebih banyak React Native, melihat bahasa dasar yang dipakai adalah js. Cari tahu saja sedikit-sedikit mengenai itu, perbedaan, kelebihan kekurangan dan sejenisnya. Gas aja diskusi disini kalau ada kesusahan bang Ponpon

  • BabiHutan changed the title to [DISKUSI] Flutter.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...