apple ad facebook integrated

This commit is contained in:
kishan06
2024-07-13 11:28:58 +05:30
parent ccc2a73929
commit dd878393c6
6 changed files with 161 additions and 191 deletions

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">ReGroup123</string>
<string name="facebook_app_id">8076081959097016</string>
<string name="fb_login_protocol_scheme">fb8076081959097016</string>
<string name="facebook_client_token">ca5a1805872edbec0d3a0a0b02229ba5</string>
<string name="app_name">Regroup</string>
<string name="facebook_app_id">803386025107790</string>
<string name="fb_login_protocol_scheme">fb803386025107790</string>
<string name="facebook_client_token">fa69ee794ff94e50c7ddbfac1e035cb9</string>
</resources>

View File

@@ -27,10 +27,9 @@ class ApiUrls {
static const postcommunities = "${baseUrl}select-communities";
static const googlelogin = "${baseUrl}sign-in-with-google-login";
static const applelogin = "${baseUrl}sign-in-with-google-login";
static const applelogin = "${baseUrl}apple-login-or-registration";
static const storeDetailsOfOAuth = "${baseUrl}update-user-account-type";
static const getuserdetails = "${baseUrl}get-auth-user-data";
}

View File

@@ -13,6 +13,7 @@ import 'package:regroup/Utils/Common/googleOAuthService.dart';
import 'package:regroup/Utils/Common/sized_box.dart';
import 'package:regroup/Utils/dialogs.dart';
import 'package:regroup/Utils/texts.dart';
import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart';
import 'package:regroup/resources/routes/route_name.dart';
import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart';
import 'package:flutter_facebook_auth/flutter_facebook_auth.dart';
@@ -27,8 +28,8 @@ class LoginScreen extends StatefulWidget {
}
class _LoginScreenState extends State<LoginScreen> {
String _accessToken = "";
Map _userData = {};
Map<String, dynamic>? _userData;
AccessToken? _accessToken;
bool _checking = true;
final TextEditingController _emailController = TextEditingController();
RxBool isObscured = true.obs;
@@ -50,16 +51,9 @@ class _LoginScreenState extends State<LoginScreen> {
final resp = await LoginAPI().storeGoogleSignin(
{"google_access_token": value, "one_signal_player_id": "ABCD"});
if (resp.message == "go-to-signin-via-oauth") {
// Get.to(()=> );
Get.toNamed(RouteName.verifygoogleapplepage,
arguments: {"email": resp.data});
logger.d("go to sign in");
} else if (resp.message == "profile-incomplete") {
if (resp.data) {
}
}
else if (value == null) {
} else if (value == null) {
Get.snackbar(
'Error',
'Google Sign-In canceled',
@@ -93,54 +87,54 @@ class _LoginScreenState extends State<LoginScreen> {
});
}
// _checkIfisLoggedIn() async {
// //user token
// final accessToken = await FacebookAuth.instance.accessToken;
_checkIfisLoggedIn() async {
//user token
final accessToken = await FacebookAuth.instance.accessToken;
// setState(() {
// _checking = false;
// });
setState(() {
_checking = false;
});
// if (accessToken != null) {
// print("/////////////////////////////////////////xcheck");
// print("worked");
// print(accessToken.toJson());
// final userData = await FacebookAuth.instance.getUserData();
// // _accessToken = accessToken;
// setState(() {
// _userData = userData;
// });
// } else {
// print("/////////////////////////////////////////check");
if (accessToken != null) {
print("/////////////////////////////////////////xcheck");
print("worked");
print(accessToken.toJson());
final userData = await FacebookAuth.instance.getUserData();
// _accessToken = accessToken;
setState(() {
_userData = userData;
});
} else {
print("/////////////////////////////////////////check");
// print("not worked");
// _login();
// }
// }
print("not worked");
_login();
}
}
// _login() async {
// final LoginResult result = await FacebookAuth.instance.login();
_login() async {
final LoginResult result = await FacebookAuth.instance.login();
// if (result.status == LoginStatus.success) {
// _accessToken = result.accessToken;
if (result.status == LoginStatus.success) {
_accessToken = result.accessToken;
// final userData = await FacebookAuth.instance.getUserData();
// _userData = userData;
// } else {
// print(result.status);
// print(result.message);
// }
// setState(() {
// _checking = false;
// });
// }
final userData = await FacebookAuth.instance.getUserData();
_userData = userData;
} else {
print(result.status);
print(result.message);
}
setState(() {
_checking = false;
});
}
// _logout() async {
// await FacebookAuth.instance.logOut();
// _accessToken = null;
// _userData = null;
// setState(() {});
// }
_logout() async {
await FacebookAuth.instance.logOut();
_accessToken = null;
_userData = null;
setState(() {});
}
_logincheck() async {
if (_emailController.text.isBlank! || _passwordController.text.isBlank!) {
@@ -414,8 +408,6 @@ class _LoginScreenState extends State<LoginScreen> {
GestureDetector(
onTap: () {
_loginWithApple();
// Get.toNamed(
// RouteName.verifygoogleapplepage);
},
child: Container(
width: 55,
@@ -473,16 +465,7 @@ class _LoginScreenState extends State<LoginScreen> {
const Spacer(),
GestureDetector(
onTap: () async {
/* FacebookAuth.instance.login(
permissions: ['public_profile', 'email'],
).then((value) {
FacebookAuth.instance.getUserData().then((userData) {
setState(() {
/* _isLoggedIn = true;
_userObj = userData; */
});
});
}); */
_checkIfisLoggedIn();
},
child: Container(
width: 55,

View File

@@ -4,6 +4,7 @@ import 'package:regroup/Common/base_manager.dart';
import 'package:regroup/Common/controller/data/network/network_api.dart';
import 'package:regroup/Global.dart';
import 'package:regroup/Login/Model/LoginModel.dart';
import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart';
import 'package:regroup/resources/routes/route_name.dart';
import 'package:shared_preferences/shared_preferences.dart';
@@ -41,18 +42,12 @@ class LoginAPI {
if (accountype == "1") {
print('tell us individyal');
Get.toNamed(RouteName.tellusindividualscreen,
arguments: {
'pageroute' : "mainscreen"
}
);
arguments: {'pageroute': "mainscreen"});
} else if (accountype == "2") {
print('tell us business');
Get.toNamed(RouteName.tellusbusinessscreen,
arguments: {
'pageroute' : "mainscreen"
}
);
arguments: {'pageroute': "mainscreen"});
}
} else {
Get.toNamed(RouteName.mainscreen);
@@ -76,14 +71,6 @@ class LoginAPI {
return ResponseData<dynamic>(
"go-to-signin-via-oauth", ResponseStatus.SUCCESS,
data: response.data['data']['email']);
}
if (response.data['data']['is_account_type_updated'] == 2 ||
response.data['data']['is_account_type_updated'] == 1) {
//get user data
return ResponseData<dynamic>(
"profile-incomplete", ResponseStatus.SUCCESS,
data: response.data['data']['email']);
} else {
return ResponseData<dynamic>("go-to-login", ResponseStatus.SUCCESS);
}
@@ -92,14 +79,16 @@ class LoginAPI {
return response;
}
Future<ResponseData> storeAppleSignin(var data) async {
Future<ResponseData> storeAppleSignin(var data,
{String? emailReceived}) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
final response = await NetworkApiServices()
.postApi(data, ApiUrls.applelogin, optionalpar: true);
if (response.status == ResponseStatus.SUCCESS) {
await prefs.setString('access-token', response.data['data']['token']);
if (response.data['data']['is_account_type_updated'] == 3) {
Get.toNamed(RouteName.verifygoogleapplepage);
Get.toNamed(RouteName.verifygoogleapplepage,
arguments: {"email": emailReceived});
return ResponseData<dynamic>(
"go-to-signin-via-oauth", ResponseStatus.SUCCESS);
} else {

View File

@@ -15,7 +15,9 @@ class AppleOAuthService {
logger.d("email is ${credential.email}");
logger.d("fullname is ${credential.givenName}");
logger.d("token is ${credential.userIdentifier}");
// LoginAPI().storeAppleSignin();
await LoginAPI()
.storeAppleSignin({"apple_auth_token": credential.userIdentifier}, emailReceived:credential.email );
} catch (e) {
print("Error occured");
}

View File

@@ -74,111 +74,108 @@ class _SplashScreenState extends State<SplashScreen> {
initConnectivity();
log(_connectionStatus.toString());
Future.delayed(Duration(seconds: 2), () async {
if (_connectionStatus.contains(ConnectivityResult.none)) {
var result = await Get.to(NoInternet());
if (result != null && result) {
print('this is first');
Timer(const Duration(seconds: 1), () async {
SharedPreferences prefs = await SharedPreferences.getInstance();
token = prefs.getString('access-token');
emailid = prefs.getString('email');
myusername = prefs.getString('username');
fullname = prefs.getString('fullname');
phonenumber = prefs.getString('phone');
if (token == null || token!.isEmpty) {
Get.toNamed(RouteName.onboarding1);
} else {
Getuserdetails().Getuser().then((value) {
print(getuserobj!.data!.userData!.isProfileUpdated!);
// .then((value) {
if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
String? accountype =
getuserobj?.data?.userData?.principalTypeXid.toString();
if (accountype == "1") {
Get.toNamed(RouteName.tellusindividualscreen,
arguments: {'pageroute': "mainscreen"});
} else if (accountype == "2") {
Get.toNamed(RouteName.tellusbusinessscreen,
arguments: {'pageroute': "mainscreen"});
}
} else {
Get.toNamed(RouteName.mainscreen);
}
});
// print(getuserobj!.data!.userData!.isProfileUpdated!);
// // .then((value) {
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
// String? accountype =
// getuserobj?.data?.userData?.principalTypeXid.toString();
// if (accountype == "1") {
// Get.toNamed(RouteName.tellusindividualscreen,
// arguments: {
// 'pageroute' : "mainscreen"
// }
// );
// } else if (accountype == "2") {
// Get.toNamed(RouteName.tellusbusinessscreen);
// }
// } else {
// Get.toNamed(RouteName.mainscreen);
// }
// }
// );
}
});
}
} else {
Timer(const Duration(seconds: 2), () async {
print('this is second');
SharedPreferences prefs = await SharedPreferences.getInstance();
token = prefs.getString('access-token');
emailid = prefs.getString('email');
myusername = prefs.getString('username');
fullname = prefs.getString('fullname');
phonenumber = prefs.getString('phone');
if (token == null || token!.isEmpty) {
Get.toNamed(RouteName.onboarding1);
} else {
Getuserdetails().Getuser().then((value) {
print(getuserobj!.data!.userData!.isProfileUpdated!);
// .then((value) {
if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
String? accountype =
getuserobj?.data?.userData?.principalTypeXid.toString();
if (accountype == "1") {
Get.toNamed(RouteName.tellusindividualscreen,
arguments: {'pageroute': "mainscreen"});
} else if (accountype == "2") {
Get.toNamed(RouteName.tellusbusinessscreen,
arguments: {'pageroute': "mainscreen"});
}
} else {
Get.toNamed(RouteName.mainscreen);
}
});
// }
// );
}
});
}
});
// Future.delayed(Duration(seconds: 2), () async {
// Timer(const Duration(seconds: 1), () async {
// Get.toNamed(RouteName.onboarding1);
// });
// if (_connectionStatus.contains(ConnectivityResult.none)) {
// var result = await Get.to(NoInternet());
// if (result != null && result) {
// Timer(const Duration(seconds: 1), () async {
// SharedPreferences prefs = await SharedPreferences.getInstance();
// token = prefs.getString('access-token');
// emailid = prefs.getString('email');
// myusername = prefs.getString('username');
// fullname = prefs.getString('fullname');
// phonenumber = prefs.getString('phone');
// if (token == null || token!.isEmpty) {
// Get.toNamed(RouteName.onboarding1);
// } else {
// Getuserdetails().Getuser().then((value) {
// print(getuserobj!.data!.userData!.isProfileUpdated!);
// // .then((value) {
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
// String? accountype =
// getuserobj?.data?.userData?.principalTypeXid.toString();
// if (accountype == "1") {
// Get.toNamed(RouteName.tellusindividualscreen,
// arguments: {'pageroute': "mainscreen"});
// } else if (accountype == "2") {
// Get.toNamed(RouteName.tellusbusinessscreen,
// arguments: {'pageroute': "mainscreen"});
// }
// } else {
// Get.toNamed(RouteName.mainscreen);
// }
// });
// // print(getuserobj!.data!.userData!.isProfileUpdated!);
// // // .then((value) {
// // if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
// // String? accountype =
// // getuserobj?.data?.userData?.principalTypeXid.toString();
// // if (accountype == "1") {
// // Get.toNamed(RouteName.tellusindividualscreen,
// // arguments: {
// // 'pageroute' : "mainscreen"
// // }
// // );
// // } else if (accountype == "2") {
// // Get.toNamed(RouteName.tellusbusinessscreen);
// // }
// // } else {
// // Get.toNamed(RouteName.mainscreen);
// // }
// // }
// // );
// }
// });
// }
// } else {
// Timer(const Duration(seconds: 2), () async {
// print('this is second');
// SharedPreferences prefs = await SharedPreferences.getInstance();
// token = prefs.getString('access-token');
// emailid = prefs.getString('email');
// myusername = prefs.getString('username');
// fullname = prefs.getString('fullname');
// phonenumber = prefs.getString('phone');
// if (token == null || token!.isEmpty) {
// Get.toNamed(RouteName.onboarding1);
// } else {
// Getuserdetails().Getuser().then((value) {
// print(getuserobj!.data!.userData!.isProfileUpdated!);
// // .then((value) {
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
// String? accountype =
// getuserobj?.data?.userData?.principalTypeXid.toString();
// if (accountype == "1") {
// Get.toNamed(RouteName.tellusindividualscreen,
// arguments: {'pageroute': "mainscreen"});
// } else if (accountype == "2") {
// Get.toNamed(RouteName.tellusbusinessscreen,
// arguments: {'pageroute': "mainscreen"});
// }
// } else {
// Get.toNamed(RouteName.mainscreen);
// }
// });
// // }
// // );
// }
// });
// }
// });
Future.delayed(Duration(seconds: 2), () async {
Get.toNamed(RouteName.onboarding1);
});
}
@override