mOAuthTokenEndpointText.getText().toString().trim());\r
          \r
          getServerInfoIntent.putExtra(\r
-                 OperationsService.EXTRA_OAUTH2_QUERY_PARAMETERS, \r
+                 OperationsService.EXTRA_OAUTH2_QUERY_PARAMETERS,\r
                  queryParameters);\r
          \r
          if (mOperationsServiceBinder != null) {\r
          showRefreshButton(false);\r
  \r
          if (uri.length() != 0) {\r
+             uri = stripIndexPhpOrAppsFiles(uri, mHostUrlInput);\r
+ \r
              // Handle internationalized domain names\r
              uri = DisplayUtils.convertIdn(uri, true);\r
  \r
          return url;\r
      }\r
  \r
+     private String stripIndexPhpOrAppsFiles(String url, EditText mHostUrlInput) {\r
+         if (url.endsWith("/index.php")) {\r
+             url = url.substring(0, url.lastIndexOf("/index.php"));\r
+             mHostUrlInput.setText(url);\r
+         } else if (url.contains("/index.php/apps/")) {\r
+             url = url.substring(0, url.lastIndexOf("/index.php/apps/"));\r
+             mHostUrlInput.setText(url);\r
+         }\r
+ \r
+         return url;\r
+     }\r
  \r
      // TODO remove, if possible\r
      private String trimUrlWebdav(String url){       \r
      public void onAuthenticatorTaskCallback(RemoteOperationResult result) {\r
          mWaitingForOpId = Long.MAX_VALUE;\r
          dismissDialog(WAIT_DIALOG_TAG);\r
 +        mAsyncTask = null;\r
  \r
          if (result.isSuccess()) {\r
              Log_OC.d(TAG, "Successful access - time to save the account");\r