diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/activity/MainActivity.java b/ultrasonic/src/main/java/org/moire/ultrasonic/activity/MainActivity.java index ed4a5f1e..5c6c1f6b 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/activity/MainActivity.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/activity/MainActivity.java @@ -36,9 +36,12 @@ import android.widget.TextView; import org.moire.ultrasonic.R; import org.moire.ultrasonic.service.DownloadService; import org.moire.ultrasonic.service.DownloadServiceImpl; +import org.moire.ultrasonic.service.MusicService; +import org.moire.ultrasonic.service.MusicServiceFactory; import org.moire.ultrasonic.util.Constants; import org.moire.ultrasonic.util.FileUtil; import org.moire.ultrasonic.util.MergeAdapter; +import org.moire.ultrasonic.util.TabActivityBackgroundTask; import org.moire.ultrasonic.util.Util; import java.util.Collections; @@ -165,6 +168,10 @@ public class MainActivity extends SubsonicTabActivity adapter.addView(videosTitle, false); adapter.addViews(Collections.singletonList(videosButton), true); + + if (Util.isNetworkConnected(this)) { + new PingTask(this, false).execute(); + } } list.setAdapter(adapter); @@ -533,4 +540,23 @@ public class MainActivity extends SubsonicTabActivity intent.putExtra(Constants.INTENT_EXTRA_NAME_VIDEOS, 1); startActivityForResultWithoutTransition(this, intent); } + + /** + * Temporary task to make a ping to server to get it supported api version. + */ + private static class PingTask extends TabActivityBackgroundTask { + PingTask(SubsonicTabActivity activity, boolean changeProgress) { + super(activity, changeProgress); + } + + @Override + protected Void doInBackground() throws Throwable { + final MusicService service = MusicServiceFactory.getMusicService(getActivity()); + service.ping(getActivity(), null); + return null; + } + + @Override + protected void done(Void result) {} + } } \ No newline at end of file