Active IQ v6.7.1版本的 MD5 值为:5082594ca2b69fbfbe64e6d6ee2159a7
以下内容为反编译后的 ModelDetailFragment.java 源代码,内容仅作参考
package com.netapp.myautosupport.presentation.models;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import android.databinding.DataBindingUtil;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.TextView;
import android.widget.Toast;
import com.netapp.myautosupport.R;
import com.netapp.myautosupport.common.AppConstants;
import com.netapp.myautosupport.common.SharedPreferenceHandle;
import com.netapp.myautosupport.common.Utils;
import com.netapp.myautosupport.databinding.FragmentModelDetailBinding;
import com.netapp.myautosupport.fragments.RecentSearchListFragment;
import com.netapp.myautosupport.models.ModelDetails;
import com.netapp.myautosupport.models.Models;
import com.netapp.myautosupport.presentation.base.BaseFragment;
import com.netapp.myautosupport.presentation.favourites.FavoritesFragment;
import com.netapp.myautosupport.presentation.main.MainActivity;
import com.netapp.myautosupport.presentation.models.ModelDetailContract;
import com.netapp.myautosupport.presentation.search.SearchFragment;
import com.netapp.myautosupport.presentation.sites.SiteListFragment;
import com.netapp.myautosupport.remote.ModelService;
import com.netapp.myautosupport.services.ServiceGenerator;
import com.netapp.myautosupport.singleton.UserInfo;
public class ModelDetailFragment extends BaseFragment implements ModelDetailContract.View, View.OnClickListener {
private static final String PREVIOUS_PAGE = "previousPage";
private static final String TAG = "ModelDetailFragment";
private boolean isBookmarked;
boolean isSearchOrfavorties;
private FragmentModelDetailBinding mBinding;
private ModelDetails mModelDetails;
private Dialog mObjDialog;
ModelDetailPresenter modelDetailPresenter;
private String previousTitle = "";
private String previousPage = "";
String modelName = "";
private String isGroupFavorite = "";
Utils utils = new Utils();
public static ModelDetailFragment newInstance(String str, Models models, boolean z) {
ModelDetailFragment modelDetailFragment = new ModelDetailFragment();
Bundle bundle = new Bundle();
bundle.putParcelable(AppConstants.MODELS, models);
bundle.putString(PREVIOUS_PAGE, str);
bundle.putBoolean(AppConstants.IS_SEARCH_OR_FAVORITES, z);
modelDetailFragment.setArguments(bundle);
return modelDetailFragment;
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
if (getArguments() != null) {
this.modelName = ((Models) getArguments().getParcelable(AppConstants.MODELS)).getModel();
this.isSearchOrfavorties = getArguments().getBoolean(AppConstants.IS_SEARCH_OR_FAVORITES);
this.previousPage = getArguments().getString(PREVIOUS_PAGE);
}
String str = TAG;
Log.d(str, "onCreate: previousPage: " + this.previousPage);
}
@Override
public View onCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) {
this.mBinding = (FragmentModelDetailBinding) DataBindingUtil.inflate(layoutInflater, R.layout.fragment_model_detail, viewGroup, false);
View root = this.mBinding.getRoot();
this.sharedPreferenceHandle = SharedPreferenceHandle.getSharedPreferenceHandle(this.activity);
this.modelDetailPresenter = new ModelDetailPresenter((ModelService) ServiceGenerator.createService(ModelService.class));
this.modelDetailPresenter.attachView(this);
this.activity.logEvent("Group Dashboard");
String str = TAG;
Log.d(str, "onCreateView: Model Name : " + this.modelName);
if (this.utils.isNetworkAvailable(this.activity)) {
if (!this.modelName.isEmpty()) {
this.modelDetailPresenter.getModelDetails(this.modelName);
}
} else {
this.utils.showDialogWithOneButton(this.activity, AppConstants.CHECK_INTERNET_MSG);
}
if (this.activity.getToolbarTitleVisibility() == 0) {
this.previousTitle = this.activity.getToolbarTitleText();
}
this.mBinding.fragmentModelDetailCustomerCv.setOnClickListener(this);
this.mBinding.fragmentModelDetailInfoImg.setOnClickListener(this);
return root;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
this.activity = (MainActivity) context;
}
@Override
public void onDetach() {
super.onDetach();
}
@Override
public void onResume() {
super.onResume();
this.activity.enableBackButton(true, TAG);
String str = this.previousPage;
if (str != null && str.equalsIgnoreCase(SiteListFragment.class.getSimpleName())) {
this.activity.updateToolbarTitle(getString(R.string.sites));
return;
}
String str2 = this.previousPage;
if (str2 != null && str2.equalsIgnoreCase(FavoritesFragment.class.getSimpleName())) {
this.activity.updateToolbarTitle(getString(R.string.favorites));
return;
}
String str3 = this.previousPage;
if (str3 != null && str3.equalsIgnoreCase(SearchFragment.class.getSimpleName())) {
this.activity.updateToolbarTitle(getString(R.string.search));
this.activity.hideToolbar(false);
return;
}
String str4 = this.previousPage;
if (str4 != null && str4.equalsIgnoreCase(RecentSearchListFragment.class.getSimpleName())) {
this.activity.updateToolbarTitle(getString(R.string.recent_search));
} else if (this.activity.tabBarFragment != null && this.activity.tabBarFragment.tabHost != null && this.activity.tabBarFragment.tabHost.getCurrentTab() == 4) {
this.activity.updateToolbarTitle(getString(R.string.favorites));
} else {
this.activity.enableBackButton(false, null);
this.activity.updateToolbarTitle("NetApp");
if (UserInfo.INSTANCE.getCustomerType().equals(AppConstants.INTERNAL) && this.activity.whichTitleVisible().equals(AppConstants.TOOLBAR_LOGO_KEY)) {
this.activity.enableSearchButton(true);
}
}
}
@Override
public void onDestroy() {
super.onDestroy();
this.activity.updateToolbarTitle(this.previousTitle);
String str = this.previousPage;
if (str != null && str.equalsIgnoreCase(SearchFragment.class.getSimpleName())) {
this.activity.hideToolbar(true);
} else if (this.activity.tabBarFragment == null || this.activity.tabBarFragment.tabHost == null || this.activity.tabBarFragment.tabHost.getCurrentTab() != 4) {
} else {
this.activity.enableBackButton(false, TAG);
this.activity.showMainTitle(true, getString(R.string.tab_favorites_title));
}
}
@Override
public void success(ModelDetails modelDetails) {
this.mModelDetails = modelDetails;
this.mBinding.setModel(modelDetails);
if (this.mModelDetails != null) {
this.mBinding.fragmentModelDetailEmptyView.setVisibility(8);
this.mBinding.fragmentModelDetailView.setVisibility(0);
return;
}
this.mBinding.fragmentModelDetailEmptyView.setVisibility(0);
this.mBinding.fragmentModelDetailView.setVisibility(8);
}
@Override
public void failure() {
this.mBinding.fragmentModelDetailEmptyView.setVisibility(0);
this.mBinding.fragmentModelDetailView.setVisibility(8);
}
@Override
public void onClick(View view) {
int id = view.getId();
if (id != R.id.fragment_model_detail_customer_cv) {
if (id != R.id.fragment_model_detail_info_img) {
return;
}
displaySearchByModelDialog();
return;
}
ModelDetails modelDetails = this.mModelDetails;
if (modelDetails == null || modelDetails.getSystemModel() == null) {
return;
}
this.activity.addFragment(R.id.content_main, TopTenCustomersFragment.newInstance(TAG, this.modelName, this.mModelDetails));
}
public void displaySearchByModelDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this.activity);
builder.setCancelable(false);
MainActivity mainActivity = this.activity;
MainActivity mainActivity2 = this.activity;
View inflate = ((LayoutInflater) mainActivity.getSystemService("layout_inflater")).inflate(R.layout.dialog_flash_advisor, (ViewGroup) null);
TextView textView = (TextView) inflate.findViewById(R.id.dialog_flash_advisor_title_tv);
textView.setText(getResources().getString(R.string.Model_txt));
textView.setAllCaps(true);
final WebView webView = (WebView) inflate.findViewById(R.id.dialog_flash_advisor_title_wb);
webView.loadUrl("file:///android_asset/html/" + getResources().getString(R.string.getSearchByModelInfo));
webView.setWebViewClient(new WebViewClient() {
@Override
@RequiresApi(api = 21)
public boolean shouldOverrideUrlLoading(WebView webView2, String str) {
webView2.setBackgroundResource(R.color.white);
if (str.startsWith("mailto:")) {
try {
ModelDetailFragment.this.activity.startActivity(new Intent("android.intent.action.VIEW", Uri.parse(str)));
} catch (Exception unused) {
Toast.makeText(ModelDetailFragment.this.activity, "Email client is not installed or configured", 1).show();
}
} else {
webView2.loadUrl(str);
}
return true;
}
@Override
public void onPageFinished(WebView webView2, String str) {
super.onPageFinished(webView2, str);
Log.e(ModelDetailFragment.TAG, "onPageFinished: ");
WebView webView3 = webView;
webView3.loadUrl("javascript:document.getElementById('navigationText')style.fontFamily =src:url('file:///android_asset/fonts/Montserrat-Regular.ttf');");
ModelDetailFragment.this.hideLoading();
}
});
builder.setView(inflate);
inflate.findViewById(R.id.dialog_flash_advisor_close_im).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ModelDetailFragment.this.mObjDialog.dismiss();
}
});
this.mObjDialog = builder.create();
this.mObjDialog.show();
}
}