Merge pull request #122 from manderson23/master

Android Force Close Fixes
This commit is contained in:
Samuel Clay 2013-03-27 21:56:53 -07:00
commit 9b0506fcc0
2 changed files with 15 additions and 8 deletions

View file

@ -8,11 +8,12 @@ public class NewsBlurApplication extends Application {
ImageLoader imageLoader; ImageLoader imageLoader;
public NewsBlurApplication() { @Override
super(); public void onCreate() {
super.onCreate();
imageLoader = new ImageLoader(this); imageLoader = new ImageLoader(this);
} }
public ImageLoader getImageLoader() { public ImageLoader getImageLoader() {
return imageLoader; return imageLoader;
} }

View file

@ -91,9 +91,13 @@ public class Profile extends SherlockFragmentActivity {
} else { } else {
apiManager.updateUserProfile(); apiManager.updateUserProfile();
user = PrefsUtils.getUserDetails(Profile.this); user = PrefsUtils.getUserDetails(Profile.this);
profileResponse = apiManager.getUser(user.id); // check user.id has been set. If previous attempts to update the user details
if (profileResponse != null) { // have failed then user.id == null would cause a force close
activities = profileResponse.activities; if (user.id != null) {
profileResponse = apiManager.getUser(user.id);
if (profileResponse != null) {
activities = profileResponse.activities;
}
} }
} }
return null; return null;
@ -103,8 +107,10 @@ public class Profile extends SherlockFragmentActivity {
protected void onPostExecute(Void result) { protected void onPostExecute(Void result) {
if (user != null && detailsFragment != null && activitiesFragment != null) { if (user != null && detailsFragment != null && activitiesFragment != null) {
detailsFragment.setUser(Profile.this, user, TextUtils.isEmpty(userId)); detailsFragment.setUser(Profile.this, user, TextUtils.isEmpty(userId));
// TODO still sometimes causes a force close - is activities null ? // activities could be null if no profile response was received
activitiesFragment.setActivitiesAndUser(Profile.this, activities, user); if (activities != null) {
activitiesFragment.setActivitiesAndUser(Profile.this, activities, user);
}
} }
} }
} }