细节修复、部分bug修复
This commit is contained in:
@ -269,6 +269,7 @@ public class MainActivity extends BaseFragmentActivity implements OnClickListene
|
||||
if (sp.getBoolean("autoinstall", true)) {
|
||||
if (FileUtils.isEmptyFile(downloadEntity.getPath())) {
|
||||
toast("解析包错误");
|
||||
DownloadManager.getInstance(MainActivity.this).cancel(downloadEntity.getUrl());
|
||||
} else {
|
||||
PackageManager manager = new PackageManager(
|
||||
getApplicationContext());
|
||||
@ -743,100 +744,102 @@ public class MainActivity extends BaseFragmentActivity implements OnClickListene
|
||||
Runnable runnable = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
String to = getIntent().getExtras().getString("to");
|
||||
if(!TextUtils.isEmpty(to)){
|
||||
Intent toIntent = new Intent(getApplicationContext(), intentClass(to));
|
||||
if ("NewsDetailActivity".equals(to)) {
|
||||
toIntent.putExtra("newsId", getIntent().getExtras().getString("newsId"));
|
||||
toIntent.putExtra("entrance", getIntent().getExtras().getString("entrance"));
|
||||
} else if("DownloadManagerActivity".equals(to)) {
|
||||
toIntent.putExtra("packageName" , getIntent().getExtras().getString("packageName"));
|
||||
toIntent.putExtra("currentItem" , 1);
|
||||
} else if ("GameDetailActivity".equals(to)) {
|
||||
toIntent.putExtra("gameId", getIntent().getExtras().getString("gameId"));
|
||||
toIntent.putExtra("entrance", getIntent().getExtras().getString("entrance"));
|
||||
} else if ("SubjectActivity".equals(to)) {
|
||||
toIntent.putExtra("id", getIntent().getExtras().getString("id"));
|
||||
toIntent.putExtra("name", getIntent().getExtras().getString("name"));
|
||||
toIntent.putExtra("order", getIntent().getExtras().getBoolean("order"));
|
||||
} else if ("ViewImageActivity".equals(to)) {
|
||||
toIntent.putExtra("urls" , getIntent().getExtras().getStringArrayList("urls"));
|
||||
toIntent.putExtra("current" , getIntent().getExtras().getInt("current",0));
|
||||
toIntent.putExtra("ScaleType" , getIntent().getExtras().getString("ScaleType"));
|
||||
}
|
||||
startActivity(toIntent);
|
||||
} else {
|
||||
String from = getIntent().getStringExtra("from");
|
||||
if (!TextUtils.isEmpty(from)) {
|
||||
if (from.equals("plugin")) {
|
||||
String packageName = getIntent().getStringExtra(
|
||||
"packageName");
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
DownloadManagerActivity.class);
|
||||
intent.putExtra("currentItem", 1);
|
||||
intent.putExtra("packageName", packageName);
|
||||
startActivity(intent);
|
||||
} else if (from.equals("mipush_news")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
NewsDetailActivity.class);
|
||||
intent.putExtra("entrance", "小米推送");
|
||||
intent.putExtra("entity",
|
||||
getIntent().getSerializableExtra("entity"));
|
||||
startActivity(intent);
|
||||
} else if (from.equals("mipush_new_game")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
GameDetailActivity.class);
|
||||
intent.putExtra("entrance", "小米推送");
|
||||
startActivity(intent);
|
||||
} else if (from.equals("mipush_plugin")) {
|
||||
try {
|
||||
JSONObject jsonObject = new JSONObject(getIntent()
|
||||
.getStringExtra("data"));
|
||||
JSONArray jsonArray = jsonObject.getJSONArray("apk");
|
||||
ArrayList<String> list = new ArrayList<>();
|
||||
for (int i = 0; i < jsonArray.length(); i++) {
|
||||
JSONObject apk = jsonArray.getJSONObject(i);
|
||||
String packageName = apk.getString("package");
|
||||
if (PackageManager.isInstalled(packageName)) {
|
||||
// 判断是否gh_version是否相同
|
||||
String gh_version = (String) PackageUtils
|
||||
.getMetaData(getApplicationContext(),
|
||||
packageName, "gh_version");
|
||||
if (gh_version != null) {
|
||||
gh_version = gh_version.substring(2);
|
||||
// 判断gh_version是否相同
|
||||
if (gh_version.equals(apk
|
||||
.getString("gh_version"))) {
|
||||
// 判断version是否相同
|
||||
String version = PackageUtils
|
||||
.getVersionByPackage(
|
||||
getApplicationContext(),
|
||||
packageName);
|
||||
if (version != null && version.equals(apk
|
||||
.getString("version"))) {
|
||||
// 版本相同,无需显示插件更新,继续查看是否有可更新的游戏包
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
list.add(packageName);
|
||||
}
|
||||
}
|
||||
if (getIntent() != null && getIntent().getExtras() != null) {
|
||||
String to = getIntent().getExtras().getString("to");
|
||||
if(!TextUtils.isEmpty(to)){
|
||||
Intent toIntent = new Intent(getApplicationContext(), intentClass(to));
|
||||
if ("NewsDetailActivity".equals(to)) {
|
||||
toIntent.putExtra("newsId", getIntent().getExtras().getString("newsId"));
|
||||
toIntent.putExtra("entrance", getIntent().getExtras().getString("entrance"));
|
||||
} else if("DownloadManagerActivity".equals(to)) {
|
||||
toIntent.putExtra("packageName" , getIntent().getExtras().getString("packageName"));
|
||||
toIntent.putExtra("currentItem" , 1);
|
||||
} else if ("GameDetailActivity".equals(to)) {
|
||||
toIntent.putExtra("gameId", getIntent().getExtras().getString("gameId"));
|
||||
toIntent.putExtra("entrance", getIntent().getExtras().getString("entrance"));
|
||||
} else if ("SubjectActivity".equals(to)) {
|
||||
toIntent.putExtra("id", getIntent().getExtras().getString("id"));
|
||||
toIntent.putExtra("name", getIntent().getExtras().getString("name"));
|
||||
toIntent.putExtra("order", getIntent().getExtras().getBoolean("order"));
|
||||
} else if ("ViewImageActivity".equals(to)) {
|
||||
toIntent.putExtra("urls" , getIntent().getExtras().getStringArrayList("urls"));
|
||||
toIntent.putExtra("current" , getIntent().getExtras().getInt("current",0));
|
||||
toIntent.putExtra("ScaleType" , getIntent().getExtras().getString("ScaleType"));
|
||||
}
|
||||
startActivity(toIntent);
|
||||
} else {
|
||||
String from = getIntent().getStringExtra("from");
|
||||
if (!TextUtils.isEmpty(from)) {
|
||||
if (from.equals("plugin")) {
|
||||
String packageName = getIntent().getStringExtra(
|
||||
"packageName");
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
DownloadManagerActivity.class);
|
||||
intent.putExtra("currentItem", 1);
|
||||
intent.putExtra("isPushIntent", true);
|
||||
intent.putExtra("packageName", packageName);
|
||||
startActivity(intent);
|
||||
} catch (JSONException e) {
|
||||
} else if (from.equals("mipush_news")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
NewsDetailActivity.class);
|
||||
intent.putExtra("entrance", "小米推送");
|
||||
intent.putExtra("entity",
|
||||
getIntent().getSerializableExtra("entity"));
|
||||
startActivity(intent);
|
||||
} else if (from.equals("mipush_new_game")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
GameDetailActivity.class);
|
||||
intent.putExtra("entrance", "小米推送");
|
||||
startActivity(intent);
|
||||
} else if (from.equals("mipush_plugin")) {
|
||||
try {
|
||||
JSONObject jsonObject = new JSONObject(getIntent()
|
||||
.getStringExtra("data"));
|
||||
JSONArray jsonArray = jsonObject.getJSONArray("apk");
|
||||
ArrayList<String> list = new ArrayList<>();
|
||||
for (int i = 0; i < jsonArray.length(); i++) {
|
||||
JSONObject apk = jsonArray.getJSONObject(i);
|
||||
String packageName = apk.getString("package");
|
||||
if (PackageManager.isInstalled(packageName)) {
|
||||
// 判断是否gh_version是否相同
|
||||
String gh_version = (String) PackageUtils
|
||||
.getMetaData(getApplicationContext(),
|
||||
packageName, "gh_version");
|
||||
if (gh_version != null) {
|
||||
gh_version = gh_version.substring(2);
|
||||
// 判断gh_version是否相同
|
||||
if (gh_version.equals(apk
|
||||
.getString("gh_version"))) {
|
||||
// 判断version是否相同
|
||||
String version = PackageUtils
|
||||
.getVersionByPackage(
|
||||
getApplicationContext(),
|
||||
packageName);
|
||||
if (version != null && version.equals(apk
|
||||
.getString("version"))) {
|
||||
// 版本相同,无需显示插件更新,继续查看是否有可更新的游戏包
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
list.add(packageName);
|
||||
}
|
||||
}
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
DownloadManagerActivity.class);
|
||||
intent.putExtra("currentItem", 1);
|
||||
intent.putExtra("isPushIntent", true);
|
||||
startActivity(intent);
|
||||
} catch (JSONException e) {
|
||||
|
||||
e.printStackTrace();
|
||||
e.printStackTrace();
|
||||
}
|
||||
} else if (from.equals("plugin_install")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
DownloadManagerActivity.class);
|
||||
intent.putExtra("currentItem", 0);
|
||||
intent.putExtra("path", getIntent().getStringExtra("path"));
|
||||
startActivity(intent);
|
||||
}
|
||||
} else if (from.equals("plugin_install")) {
|
||||
Intent intent = new Intent(MainActivity.this,
|
||||
DownloadManagerActivity.class);
|
||||
intent.putExtra("currentItem", 0);
|
||||
intent.putExtra("path", getIntent().getStringExtra("path"));
|
||||
startActivity(intent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user