3232import android .content .ServiceConnection ;
3333import android .content .SharedPreferences ;
3434import android .content .res .Configuration ;
35+ import android .content .res .Resources ;
36+ import android .graphics .Bitmap ;
37+ import android .graphics .BitmapFactory ;
3538import android .graphics .Color ;
3639import android .net .Uri ;
40+ import android .os .AsyncTask ;
3741import android .os .Build ;
3842import android .os .Bundle ;
3943import android .os .Handler ;
5155import android .support .v4 .widget .ViewDragHelper ;
5256import android .support .v7 .app .ActionBarDrawerToggle ;
5357import android .support .v7 .widget .Toolbar ;
58+ import android .util .Base64 ;
5459import android .util .Log ;
60+ import android .util .TypedValue ;
5561import android .view .Menu ;
5662import android .view .MenuItem ;
5763import android .view .View ;
5864import android .widget .TextView ;
5965import android .widget .Toast ;
6066
67+ import com .google .gson .stream .JsonReader ;
68+ import com .nostra13 .universalimageloader .core .display .RoundedBitmapDisplayer ;
69+
70+ import java .io .ByteArrayInputStream ;
71+ import java .io .ByteArrayOutputStream ;
72+ import java .io .IOException ;
73+ import java .io .InputStream ;
74+ import java .io .InputStreamReader ;
75+ import java .io .ObjectInputStream ;
76+ import java .io .ObjectOutputStream ;
77+ import java .io .Serializable ;
6178import java .lang .reflect .Field ;
6279
6380import butterknife .ButterKnife ;
7390import de .luhmer .owncloudnewsreader .database .DatabaseConnectionOrm ;
7491import de .luhmer .owncloudnewsreader .events .podcast .FeedPanelSlideEvent ;
7592import de .luhmer .owncloudnewsreader .helper .AidlException ;
93+ import de .luhmer .owncloudnewsreader .helper .AsyncTaskHelper ;
7694import de .luhmer .owncloudnewsreader .helper .DatabaseUtils ;
7795import de .luhmer .owncloudnewsreader .helper .PostDelayHandler ;
7896import de .luhmer .owncloudnewsreader .helper .ThemeChooser ;
79- import de .luhmer .owncloudnewsreader .reader .IReader ;
97+ import de .luhmer .owncloudnewsreader .reader .HttpJsonRequest ;
8098import de .luhmer .owncloudnewsreader .reader .OnAsyncTaskCompletedListener ;
8199import de .luhmer .owncloudnewsreader .reader .owncloud .API ;
82100import de .luhmer .owncloudnewsreader .reader .owncloud .OwnCloud_Reader ;
@@ -514,6 +532,8 @@ private boolean syncFinishedHandler() {
514532 UpdateItemList ();
515533 UpdatePodcastView ();
516534
535+ AsyncTaskHelper .StartAsyncTask (new AsyncTaskGetUserInfo ());
536+
517537 SharedPreferences mPrefs = PreferenceManager .getDefaultSharedPreferences (NewsReaderListActivity .this );
518538 int newItemsCount = mPrefs .getInt (Constants .LAST_UPDATE_NEW_ITEMS_COUNT_STRING , 0 );
519539
@@ -910,11 +930,13 @@ public void onClick(ViewHolder vh, int position) {
910930 private class AsyncTaskGetUserInfo extends AsyncTask <Void , Void , UserInfo > {
911931 @ Override
912932 protected UserInfo doInBackground (Void ... voids ) {
913- API api = API .GetRightApiForVersion ("6.0.4" , NewsReaderListActivity .this );
933+ SharedPreferences mPrefs = PreferenceManager .getDefaultSharedPreferences (NewsReaderListActivity .this );
934+ String baseUrl = mPrefs .getString (SettingsActivity .EDT_OWNCLOUDROOTPATH_STRING , "" );
935+ API api = API .GetRightApiForVersion ("6.0.4" , baseUrl );
914936
915937 try {
916938 UserInfo ui = new UserInfo ();
917- InputStream inputStream = HttpJsonRequest .PerformJsonRequest ( api . getUserUrl () , null , api . getUsername (), api .getPassword (), NewsReaderListActivity . this );
939+ InputStream inputStream = HttpJsonRequest .getInstance (). PerformJsonRequest ( api .getUserUrl () );
918940
919941 JsonReader reader = new JsonReader (new InputStreamReader (inputStream , "UTF-8" ));
920942 reader .beginObject ();
@@ -959,6 +981,9 @@ protected UserInfo doInBackground(Void... voids) {
959981
960982 return ui ;
961983 } catch (Exception e ) {
984+ if (e .getMessage ().equals ("Method Not Allowed" )) { //Remove if old version is used
985+ mPrefs .edit ().remove ("USER_INFO" ).commit ();
986+ }
962987 e .printStackTrace ();
963988 }
964989 return null ;
@@ -1010,7 +1035,7 @@ private class UserInfo implements Serializable {
10101035 }
10111036
10121037 /** Read the object from Base64 string. */
1013- private static Object fromString ( String s ) throws IOException ,
1038+ private static Object fromString (String s ) throws IOException ,
10141039 ClassNotFoundException {
10151040 byte [] data = Base64 .decode (s , Base64 .DEFAULT );
10161041 ObjectInputStream ois = new ObjectInputStream (
@@ -1021,7 +1046,7 @@ private static Object fromString( String s ) throws IOException ,
10211046 }
10221047
10231048 /** Write the object to a Base64 string. */
1024- private static String toString ( Serializable o ) throws IOException {
1049+ private static String toString (Serializable o ) throws IOException {
10251050 ByteArrayOutputStream baos = new ByteArrayOutputStream ();
10261051 ObjectOutputStream oos = new ObjectOutputStream ( baos );
10271052 oos .writeObject (o );
0 commit comments