Skip to content

Commit 5bf8ca5

Browse files
committed
Add a login screen using ParseLoginUI
1 parent a4d7aa6 commit 5bf8ca5

8 files changed

Lines changed: 106 additions & 9 deletions

File tree

AndroidManifest.xml

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,42 @@
1818
android:label="@string/app_name"
1919
android:theme="@style/AppTheme" >
2020
<activity
21-
android:name="org.missionassetfund.apps.android.activities.MainActivity"
21+
android:name="org.missionassetfund.apps.android.activities.MAFDispatchActivity"
2222
android:label="@string/app_name" >
2323
<intent-filter>
2424
<action android:name="android.intent.action.MAIN" />
2525

2626
<category android:name="android.intent.category.LAUNCHER" />
2727
</intent-filter>
2828
</activity>
29+
<activity
30+
android:name="com.parse.ui.ParseLoginActivity"
31+
android:label="@string/app_name"
32+
android:launchMode="singleTop" >
33+
<meta-data
34+
android:name="com.parse.ui.ParseLoginActivity.PARSE_LOGIN_ENABLED"
35+
android:value="true" />
36+
<meta-data
37+
android:name="com.parse.ui.ParseLoginActivity.PARSE_LOGIN_EMAIL_AS_USERNAME"
38+
android:value="true" />
39+
<meta-data
40+
android:name="com.parse.ui.ParseLoginActivity.FACEBOOK_LOGIN_ENABLED"
41+
android:value="false" />
42+
<meta-data
43+
android:name="com.parse.ui.ParseLoginActivity.TWITTER_LOGIN_ENABLED"
44+
android:value="false" />
45+
<meta-data
46+
android:name="com.parse.ui.ParseLoginActivity.PARSE_SIGNUP_BUTTON_TEXT"
47+
android:value="@string/parse_signup_button_text" />
48+
<meta-data
49+
android:name="com.parse.ui.ParseLoginActivity.PARSE_LOGIN_BUTTON_TEXT"
50+
android:value="@string/parse_login_button_text" />
51+
</activity>
52+
<activity
53+
android:name="org.missionassetfund.apps.android.activities.MainActivity"
54+
android:label="@string/app_name"
55+
android:launchMode="singleTop" >
56+
</activity>
2957
</application>
3058

3159
</manifest>

libs/android-support-v4.jar

-633 KB
Binary file not shown.

project.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,4 @@
1212

1313
# Project target.
1414
target=android-19
15+
android.library.reference.1=third-party-libs/ParseLoginUI

res/menu/menu_main.xml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
3+
4+
<item
5+
android:id="@+id/action_logout"
6+
android:title="@string/action_logout">
7+
</item>
8+
9+
</menu>

res/values/strings.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,8 @@
22
<resources>
33

44
<string name="app_name">MAF App</string>
5+
<string name="action_logout">Log Out</string>
6+
<string name="parse_signup_button_text">Create Account</string>
7+
<string name="parse_login_button_text">Log In</string>
58

69
</resources>

src/org/missionassetfund/apps/android/MAFApplication.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@ public void onCreate() {
1212
super.onCreate();
1313

1414
// Initializing Parse
15-
Parse.initialize(this, "YeCq7QZpwMg4vEqaZlJs2ZVZvQ7gJrTi1zN9aa4t",
16-
"DgHFqxILVyV2qIGA0pLNrbMlNMQBqDIpI5PZjV9x");
15+
Parse.initialize(this, "qK7qJuFt6weBIrBx9eTzK1UBWJvkqb3jH6l8aw22",
16+
"SPC4XFKVlnX4ChVu7jS0IwTjfKDAY9uxXh1Y8jsy");
17+
18+
Parse.setLogLevel(Parse.LOG_LEVEL_DEBUG);
1719
}
1820

1921
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package org.missionassetfund.apps.android.activities;
2+
3+
import com.parse.ui.ParseLoginDispatchActivity;
4+
5+
public class MAFDispatchActivity extends ParseLoginDispatchActivity {
6+
7+
@Override
8+
protected Class<?> getTargetClass() {
9+
return MainActivity.class;
10+
}
11+
12+
}
Lines changed: 48 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,58 @@
1-
21
package org.missionassetfund.apps.android.activities;
32

43
import org.missionassetfund.apps.android.R;
54

65
import android.app.Activity;
6+
import android.content.Intent;
7+
import android.os.Build;
78
import android.os.Bundle;
9+
import android.view.Menu;
10+
import android.view.MenuInflater;
11+
import android.view.MenuItem;
12+
13+
import com.parse.ParseUser;
814

915
public class MainActivity extends Activity {
1016

11-
@Override
12-
protected void onCreate(Bundle savedInstanceState) {
13-
super.onCreate(savedInstanceState);
14-
setContentView(R.layout.activity_login);
15-
}
17+
@Override
18+
protected void onCreate(Bundle savedInstanceState) {
19+
super.onCreate(savedInstanceState);
20+
setContentView(R.layout.activity_login);
21+
}
22+
23+
@Override
24+
public boolean onCreateOptionsMenu(Menu menu) {
25+
MenuInflater inflater = getMenuInflater();
26+
inflater.inflate(R.menu.menu_main, menu);
27+
return true;
28+
}
29+
30+
@Override
31+
public boolean onOptionsItemSelected(MenuItem item) {
32+
switch (item.getItemId()) {
33+
34+
case R.id.action_logout:
35+
logoutParse();
36+
break;
37+
default:
38+
break;
39+
}
40+
41+
return true;
42+
}
43+
44+
private void logoutParse() {
45+
ParseUser.logOut();
46+
47+
// FLAG_ACTIVITY_CLEAR_TASK only works on API 11, so if the user
48+
// logs out on older devices, we'll just exit.
49+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
50+
Intent intent = new Intent(this, MAFDispatchActivity.class);
51+
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK
52+
| Intent.FLAG_ACTIVITY_NEW_TASK);
53+
startActivity(intent);
54+
} else {
55+
finish();
56+
}
57+
}
1658
}

0 commit comments

Comments
 (0)