방설정정보 아이폰에서만 안나오는거 수정1차

This commit is contained in:
eld_master 2025-02-14 14:59:17 +09:00
parent 36179dd975
commit fc8466d5c3
4 changed files with 66 additions and 44 deletions

View File

@ -20,8 +20,8 @@ android {
applicationId "com.allscore_app"
minSdkVersion 23
targetSdkVersion 34
versionCode 17
versionName "1.0.17"
versionCode 18
versionName "1.0.18"
}
signingConfigs {
release {

View File

@ -6,9 +6,9 @@ class Config {
// ID - ios
// static const String realAdUnitId = 'ca-app-pub-6461991944599918/9704216771';
// ID
// static const String adUnitId = 'ca-app-pub-3940256099942544/6300978111'; //
static const String adUnitId = 'ca-app-pub-3940256099942544/6300978111'; //
// static const String adUnitId = 'ca-app-pub-6461991944599918/5107596297'; // android
static const String adUnitId = 'ca-app-pub-6461991944599918/9704216771'; // ios
// static const String adUnitId = 'ca-app-pub-6461991944599918/9704216771'; // ios
//
static const String baseUrl = 'https://d2zcnlqji5t7mh.cloudfront.net';
//

View File

@ -40,7 +40,7 @@ class _RoomSettingModalState extends State<RoomSettingModal> {
// Firebase Realtime Database reference (FRD )
late DatabaseReference _roomRef;
bool _isLoading = true;
bool _isLoading = false;
// Distinguish if room is "private" or "team" ( )
late bool isPrivateType;
@ -48,61 +48,83 @@ class _RoomSettingModalState extends State<RoomSettingModal> {
@override
void initState() {
super.initState();
// roomInfo에서
final data = widget.roomInfo;
// room_seq
roomSeq = int.tryParse('${data['room_seq'] ?? '0'}') ?? 0;
// (1) room_seq
roomSeq = int.tryParse('${widget.roomInfo['room_seq'] ?? '0'}') ?? 0;
// (2) room type
final roomTypeStr = (widget.roomInfo['room_type'] ?? 'private').toString().toLowerCase();
// if "private" => isPrivateType=true, else => isPrivateType=false
// room type
final roomTypeStr = (data['room_type'] ?? 'private').toString().toLowerCase();
isPrivateType = (roomTypeStr == 'private');
// master
isMaster = data['room_master_yn'] == 'Y';
//
roomTitle = data['room_title']?.toString() ?? '';
roomIntro = data['room_intro']?.toString() ?? '';
openYn = data['open_yn']?.toString() ?? 'Y';
roomPw = data['room_pw']?.toString() ?? '';
runningTime = _toInt(data['running_time'], 1);
numberOfPeople = _toInt(data['number_of_people'], 10);
scoreOpenRange = data['score_open_range']?.toString() ?? 'PRIVATE';
// (3) firebase ref
final roomKey = 'korea-$roomSeq';
_roomRef = FirebaseDatabase.instance.ref('rooms/$roomKey/roomInfo');
// // (2) room type
// final roomTypeStr = (widget.roomInfo['room_type'] ?? 'private').toString().toLowerCase();
// // if "private" => isPrivateType=true, else => isPrivateType=false
// isPrivateType = (roomTypeStr == 'private');
// // (3) firebase ref
// final roomKey = 'korea-$roomSeq';
// _roomRef = FirebaseDatabase.instance.ref('rooms/$roomKey/roomInfo');
// (4) compare my_user_seq with master_user_seq + read roomInfo from FRD
_checkMasterAndFetchData();
// _checkMasterAndFetchData();
}
/// Load my_user_seq from local storage,
/// then read roomInfo from FRD and update state
/// ( my_user_seq FRD에서 roomInfo state )
Future<void> _checkMasterAndFetchData() async {
final prefs = await SharedPreferences.getInstance();
final myUserSeq = prefs.getInt('my_user_seq') ?? 0;
// Future<void> _checkMasterAndFetchData() async {
// final prefs = await SharedPreferences.getInstance();
// final myUserSeq = prefs.getInt('my_user_seq') ?? 0;
final snapshot = await _roomRef.get();
if (!snapshot.exists) {
// No room info ( )
setState(() {
_isLoading = false;
isMaster = false;
roomTitle = 'No room info';
// '방 정보 없음'
});
return;
}
// final snapshot = await _roomRef.get();
// if (!snapshot.exists) {
// // No room info ( )
// setState(() {
// _isLoading = false;
// isMaster = false;
// roomTitle = 'No room info';
// // '방 정보 없음'
// });
// return;
// }
final data = snapshot.value as Map<dynamic, dynamic>? ?? {};
// e.g. master_user_seq, open_yn, etc
final masterSeq = data['master_user_seq'] ?? 0;
// final data = snapshot.value as Map<dynamic, dynamic>? ?? {};
// // e.g. master_user_seq, open_yn, etc
// final masterSeq = data['master_user_seq'] ?? 0;
setState(() {
isMaster = (masterSeq.toString() == myUserSeq.toString());
// setState(() {
// isMaster = (masterSeq.toString() == myUserSeq.toString());
// fill fields ( )
roomTitle = data['room_title']?.toString() ?? '';
roomIntro = data['room_intro']?.toString() ?? '';
openYn = data['open_yn']?.toString() ?? 'Y';
roomPw = data['room_pw']?.toString() ?? '';
runningTime = _toInt(data['running_time'], 1);
numberOfPeople = _toInt(data['number_of_people'], 10);
scoreOpenRange = data['score_open_range']?.toString() ?? 'PRIVATE';
// // fill fields ( )
// roomTitle = data['room_title']?.toString() ?? '';
// roomIntro = data['room_intro']?.toString() ?? '';
// openYn = data['open_yn']?.toString() ?? 'Y';
// roomPw = data['room_pw']?.toString() ?? '';
// runningTime = _toInt(data['running_time'], 1);
// numberOfPeople = _toInt(data['number_of_people'], 10);
// scoreOpenRange = data['score_open_range']?.toString() ?? 'PRIVATE';
_isLoading = false;
});
}
// _isLoading = false;
// });
// }
/// simple int conversion ( int )
int _toInt(dynamic val, int defaultVal) {

View File

@ -1,7 +1,7 @@
name: allscore_app
description: "A new Flutter project."
publish_to: 'none'
version: 1.0.17+17
version: 1.0.18+18
environment:
sdk: '>=3.5.3 <4.0.0'
flutter: ">=3.16.0"