1313import android .content .DialogInterface ;
1414import android .content .Intent ;
1515import android .content .SharedPreferences ;
16+ import android .net .Uri ;
1617import android .os .Bundle ;
1718
19+ import android .util .Log ;
1820import android .view .MenuItem ;
1921
2022import android .view .View ;
2123import android .widget .FrameLayout ;
2224import android .widget .TextView ;
25+ import android .widget .Toast ;
2326
2427import com .google .android .gms .auth .api .signin .GoogleSignInClient ;
2528
2629import com .google .android .gms .tasks .OnCompleteListener ;
30+ import com .google .android .gms .tasks .OnFailureListener ;
31+ import com .google .android .gms .tasks .OnSuccessListener ;
2732import com .google .android .gms .tasks .Task ;
2833import com .google .android .material .navigation .NavigationView ;
2934
3035import com .google .firebase .auth .FirebaseAuth ;
3136import com .google .firebase .auth .FirebaseUser ;
37+ import com .google .firebase .dynamiclinks .FirebaseDynamicLinks ;
38+ import com .google .firebase .dynamiclinks .PendingDynamicLinkData ;
3239import com .google .firebase .firestore .DocumentSnapshot ;
3340import com .google .firebase .firestore .FirebaseFirestore ;
3441import com .sdp .remotehealthcareapp .Activities .Login .PhoneAuthActivity ;
3946import com .sdp .remotehealthcareapp .Fragments .Appointments .RecentAppointment_Fragment ;
4047import com .sdp .remotehealthcareapp .R ;
4148
49+ import static com .google .firebase .dynamiclinks .FirebaseDynamicLinks .*;
50+
4251
4352public class MainActivity extends AppCompatActivity {
4453
54+ private static final String TAG = "MainActivity" ;
55+
4556 private Fragment selectorFragment ;
4657 private GoogleSignInClient mGoogleSignInClient ;
4758 private final static int RC_SIGN_IN = 123 ;
@@ -63,11 +74,31 @@ protected void onCreate(Bundle savedInstanceState) {
6374 setContentView (R .layout .activity_main );
6475 getDrawer_started ();
6576 getProfile ();
77+
78+ //For handling dynamic links
79+ FirebaseDynamicLinks .getInstance ().getDynamicLink (getIntent ()).addOnSuccessListener (this , new OnSuccessListener <PendingDynamicLinkData >() {
80+ @ Override
81+ public void onSuccess (PendingDynamicLinkData pendingDynamicLinkData ) {
82+ Toast .makeText (MainActivity .this , "Found a dynamic link" , Toast .LENGTH_SHORT ).show ();
83+
84+ Uri link = null ;
85+ if (pendingDynamicLinkData != null )
86+ link = pendingDynamicLinkData .getLink ();
87+
88+ if (link != null )
89+ Log .d (TAG , "onSuccess: " + link );
90+ }
91+ }).addOnFailureListener (this , new OnFailureListener () {
92+ @ Override
93+ public void onFailure (@ NonNull Exception e ) {
94+ Toast .makeText (MainActivity .this , "No data extractable" , Toast .LENGTH_SHORT ).show ();
95+ }
96+ });
6697 }
6798
68- private void getProfile (){
99+ private void getProfile () {
69100 FirebaseUser user = FirebaseAuth .getInstance ().getCurrentUser ();
70- if (user !=null ) {
101+ if (user != null ) {
71102 NavigationView navigationView = (NavigationView ) findViewById (R .id .navigation );
72103 View headerView = navigationView .getHeaderView (0 );
73104 navUsername = (TextView ) headerView .findViewById (R .id .user_name );
@@ -81,7 +112,7 @@ private void getProfile(){
81112 public void onComplete (@ NonNull Task <DocumentSnapshot > task ) {
82113 if (task .isSuccessful ()) {
83114 DocumentSnapshot document = task .getResult ();
84- String name = (document .getString ("Name" ));
115+ String name = (document .getString ("Name" ));
85116 navUsername .setText (name );
86117
87118 }
@@ -90,78 +121,72 @@ public void onComplete(@NonNull Task<DocumentSnapshot> task) {
90121 }
91122 }
92123
93- public static String getName ()
94- {
124+ public static String getName () {
95125 return navUsername .getText ().toString ();
96126 }
97- private void getDrawer_started ()
98- {
99127
100- drawerLayout = findViewById (R .id .drawerlayout );
101- coordinatorLayout = findViewById (R .id .coordinator );
102- toolbar = findViewById (R .id .toolbar );
128+ private void getDrawer_started () {
129+
130+ drawerLayout = findViewById (R .id .drawerlayout );
131+ coordinatorLayout = findViewById (R .id .coordinator );
132+ toolbar = findViewById (R .id .toolbar );
103133 // frameLayout= findViewById(R.id.framelayout);
104- navigationView = findViewById (R .id .navigation );
134+ navigationView = findViewById (R .id .navigation );
105135 setUpToolbar ();
106136 getSupportFragmentManager ().beginTransaction ().replace (R .id .fragment ,
107137 new Dashboard ()).addToBackStack ("Dashboard" ).commit ();
108138
109139
110- actionBarDrawerToggle = new ActionBarDrawerToggle (this , drawerLayout ,R .string .open_drawer , R .string .close_drawer );
140+ actionBarDrawerToggle = new ActionBarDrawerToggle (this , drawerLayout , R .string .open_drawer , R .string .close_drawer );
111141 drawerLayout .addDrawerListener (actionBarDrawerToggle );
112142 actionBarDrawerToggle .syncState ();
113143
114144 navigationView .setNavigationItemSelectedListener (new NavigationView .OnNavigationItemSelectedListener () {
115145 @ Override
116146 public boolean onNavigationItemSelected (MenuItem item ) {
117- selectorFragment = new Dashboard ();
118- if (item .getItemId () == R .id .logout ) {
119- //finish();
147+ selectorFragment = new Dashboard ();
148+ if (item .getItemId () == R .id .logout ) {
149+ //finish();
120150 /*sharedPreferences= getSharedPreferences(getString(R.string.preference_file_name), MODE_PRIVATE);
121151 sharedPreferences.edit().putBoolean("isLoggedin", false).apply();*/
122- startActivity (new Intent (getApplicationContext (), PhoneAuthActivity .class ));
123- finish ();
124- }
125- else if (item .getItemId ()== R .id .book_appointment )
126- selectorFragment = new AppointmentFragment ();
127- else if (item .getItemId () == R .id .profile ){
128- selectorFragment = new MyProfile ();
129- }
130- else if (item .getItemId () == R .id .healthfiles ) {
131- selectorFragment = new HealthFiles ();
132- }
133- else if (item .getItemId ()== R .id .dashboard ){
134- selectorFragment = new Dashboard ();
135- }
136- else if (item .getItemId () == R .id .recent )
137- {
138- selectorFragment = new RecentAppointment_Fragment ();
139- }
140- else if (item .getItemId () == R .id .about ){
141- AlertDialog .Builder builder = new AlertDialog .Builder (MainActivity .this )
142- .setTitle ("About Hygeia" )
143- .setMessage ("Build and published by \n Akshat Srivastava(201851013)\n Devansh Agarwal(201851038)\n Ujjwal Shrivastava(201851136)\n " +"\n If you want to hire us or\n " +"if you want to check our other works\n " +"Have a look at our website:" )
144- .setPositiveButton ("Yes" , new DialogInterface .OnClickListener () {
145- @ Override
146- public void onClick (DialogInterface dialogInterface , int i ) {
147- Intent intent = new Intent (MainActivity .this , MyWebViewActivity .class );
148- intent .putExtra ("url" ,"https://www.example.com/" );
149- startActivity (intent );
150- }
151- }).setNegativeButton ("No" , new DialogInterface .OnClickListener () {
152- @ Override
153- public void onClick (DialogInterface dialogInterface , int i ) {
154-
155- }
156- });
157- builder .create ().show ();
158- }
159- getSupportFragmentManager ().beginTransaction ().replace (R .id .fragment ,selectorFragment ).addToBackStack ("Profile Setup" ).commit ();
160- drawerLayout .closeDrawers ();
152+ startActivity (new Intent (getApplicationContext (), PhoneAuthActivity .class ));
153+ finish ();
154+ } else if (item .getItemId () == R .id .book_appointment )
155+ selectorFragment = new AppointmentFragment ();
156+ else if (item .getItemId () == R .id .profile ) {
157+ selectorFragment = new MyProfile ();
158+ } else if (item .getItemId () == R .id .healthfiles ) {
159+ selectorFragment = new HealthFiles ();
160+ } else if (item .getItemId () == R .id .dashboard ) {
161+ selectorFragment = new Dashboard ();
162+ } else if (item .getItemId () == R .id .recent ) {
163+ selectorFragment = new RecentAppointment_Fragment ();
164+ } else if (item .getItemId () == R .id .about ) {
165+ AlertDialog .Builder builder = new AlertDialog .Builder (MainActivity .this )
166+ .setTitle ("About Hygeia" )
167+ .setMessage ("Build and published by \n Akshat Srivastava(201851013)\n Devansh Agarwal(201851038)\n Ujjwal Shrivastava(201851136)\n " + "\n If you want to hire us or\n " + "if you want to check our other works\n " + "Have a look at our website:" )
168+ .setPositiveButton ("Yes" , new DialogInterface .OnClickListener () {
169+ @ Override
170+ public void onClick (DialogInterface dialogInterface , int i ) {
171+ Intent intent = new Intent (MainActivity .this , MyWebViewActivity .class );
172+ intent .putExtra ("url" , "https://www.example.com/" );
173+ startActivity (intent );
174+ }
175+ }).setNegativeButton ("No" , new DialogInterface .OnClickListener () {
176+ @ Override
177+ public void onClick (DialogInterface dialogInterface , int i ) {
178+
179+ }
180+ });
181+ builder .create ().show ();
182+ }
183+ getSupportFragmentManager ().beginTransaction ().replace (R .id .fragment , selectorFragment ).addToBackStack ("Profile Setup" ).commit ();
184+ drawerLayout .closeDrawers ();
161185 return true ;
162186 }
163187 });
164188 }
189+
165190 private void setUpToolbar () {
166191 //setSupportActionBar(toolbar);
167192 setSupportActionBar (toolbar );
@@ -173,8 +198,7 @@ private void setUpToolbar() {
173198 public boolean onOptionsItemSelected (@ NonNull MenuItem item ) {
174199
175200
176- if (item .getItemId () == android .R .id .home )
177- {
201+ if (item .getItemId () == android .R .id .home ) {
178202 drawerLayout .openDrawer (GravityCompat .START );
179203 }
180204 return super .onOptionsItemSelected (item );
0 commit comments