Always show WarningScene and LoginScene if necessary

This commit is contained in:
seven332 committed 2016-03-06 20:10:25 +08:00
1 parent 1905fa526e
commit f213254e2b
6 files changed
+141 -53

No files matched your search

@@ -16,9 +16,8 @@
package com.hippo.ehviewer.client;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.text.TextUtils;
import android.util.Log;
@@ -26,34 +25,27 @@ import com.hippo.ehviewer.client.data.ListUrlBuilder;
import com.hippo.ehviewer.client.parser.GalleryDetailUrlParser;
import com.hippo.ehviewer.client.parser.GalleryListUrlParser;
import com.hippo.ehviewer.client.parser.GalleryPageUrlParser;
import com.hippo.ehviewer.ui.MainActivity;
import com.hippo.ehviewer.ui.scene.GalleryDetailScene;
import com.hippo.ehviewer.ui.scene.GalleryListScene;
import com.hippo.ehviewer.ui.scene.ProgressScene;
import com.hippo.scene.StageActivity;
import com.hippo.scene.Announcer;
public class EhUrlOpener {
private static final String TAG = EhUrlOpener.class.getSimpleName();
public static boolean openUrl(Activity activity, String url) {
@Nullable
public static Announcer parseUrl(String url) {
if (TextUtils.isEmpty(url)) {
return false;
return null;
}
Intent intent;
ListUrlBuilder listUrlBuilder = GalleryListUrlParser.parse(url);
if (listUrlBuilder != null) {
Bundle args = new Bundle();
args.putString(GalleryListScene.KEY_ACTION, GalleryListScene.ACTION_LIST_URL_BUILDER);
args.putParcelable(GalleryListScene.KEY_LIST_URL_BUILDER, listUrlBuilder);
intent = new Intent(activity, MainActivity.class);
intent.setAction(StageActivity.ACTION_START_SCENE);
intent.putExtra(StageActivity.KEY_SCENE_NAME, GalleryListScene.class.getName());
intent.putExtra(StageActivity.KEY_SCENE_ARGS, args);
activity.startActivity(intent);
return true;
return new Announcer(GalleryListScene.class).setArgs(args);
}
GalleryDetailUrlParser.Result result1 = GalleryDetailUrlParser.parse(url);
@@ -62,12 +54,7 @@ public class EhUrlOpener {
args.putString(GalleryDetailScene.KEY_ACTION, GalleryDetailScene.ACTION_GID_TOKEN);
args.putLong(GalleryDetailScene.KEY_GID, result1.gid);
args.putString(GalleryDetailScene.KEY_TOKEN, result1.token);
intent = new Intent(activity, MainActivity.class);
intent.setAction(StageActivity.ACTION_START_SCENE);
intent.putExtra(StageActivity.KEY_SCENE_NAME, GalleryDetailScene.class.getName());
intent.putExtra(StageActivity.KEY_SCENE_ARGS, args);
activity.startActivity(intent);
return true;
return new Announcer(GalleryDetailScene.class).setArgs(args);
}
GalleryPageUrlParser.Result result2 = GalleryPageUrlParser.parse(url);
@@ -77,16 +64,11 @@ public class EhUrlOpener {
args.putLong(ProgressScene.KEY_GID, result2.gid);
args.putString(ProgressScene.KEY_PTOKEN, result2.pToken);
args.putLong(ProgressScene.KEY_PAGE, result2.page);
intent = new Intent(activity, MainActivity.class);
intent.setAction(StageActivity.ACTION_START_SCENE);
intent.putExtra(StageActivity.KEY_SCENE_NAME, ProgressScene.class.getName());
intent.putExtra(StageActivity.KEY_SCENE_ARGS, args);
activity.startActivity(intent);
return true;
return new Announcer(ProgressScene.class).setArgs(args);
}
Log.i(TAG, "Can't parse url: " + url);
return false;
return null;
}
}