13Poker by gametower unlimited gems v0.4版本的 MD5 值为:51324fc0f195c34821074948ab266846
以下内容为反编译后的 DrawerContentView.java 源代码,内容仅作参考
package com.adeco.adsdk.widget;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Shader;
import android.graphics.Typeface;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.GradientDrawable;
import android.net.Uri;
import android.os.AsyncTask;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.GridView;
import android.widget.LinearLayout;
import android.widget.ListAdapter;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.adeco.adsdk.ads.util.MeasurmentUtils;
import com.adeco.adsdk.mediation.AdsProvider;
import com.adeco.adsdk.model.AdParameters;
import com.adeco.adsdk.model.AppWall;
import com.adeco.adsdk.model.AppWallItem;
import com.adeco.adsdk.net.ServerCommunicationException;
import com.adeco.adsdk.res.ResourceHelper;
import com.adfonic.android.utils.HtmlFormatter;
import java.util.ArrayList;
public class DrawerContentView extends FrameLayout {
private final GridViewAdapter adapter;
private AsyncTask<AdParameters, Void, Object> appWallTask;
private final Button feedbackButton;
private final GridView gridView;
private AdParameters params;
private final ProgressBar progressBar;
private final Button rateusButton;
private static class GridViewAdapter extends BaseAdapter {
private AppWall appWall;
private final Context context;
private GridViewAdapter(Context context) {
this.context = context;
}
GridViewAdapter(Context context, GridViewAdapter gridViewAdapter) {
this(context);
}
@Override
public int getCount() {
if (this.appWall == null) {
return 0;
}
return this.appWall.getItems().size();
}
@Override
public Object getItem(int arg0) {
return this.appWall.getItems().get(arg0);
}
@Override
public long getItemId(int arg0) {
return arg0;
}
@Override
public View getView(int arg0, View content, ViewGroup parent) {
String[] trackingPixels;
AppWallItem item = this.appWall.getItems().get(arg0);
LinearLayout layout = new LinearLayout(this.context);
layout.setLayoutParams(new AbsListView.LayoutParams(parent.getWidth() / 3, parent.getWidth() / 3));
int padding = MeasurmentUtils.dip2pixel(10, this.context);
layout.setPadding(padding, padding, padding, padding);
layout.setOrientation(1);
AsyncImageView imageView = new AsyncImageView(this.context);
LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(-1, 0);
lparams.weight = 1.0f;
imageView.setLayoutParams(lparams);
ArrayList<Uri> uris = new ArrayList<>();
if (item.getTrackingPixels() != null) {
for (String str : item.getTrackingPixels()) {
uris.add(Uri.parse(str));
}
}
uris.add(Uri.parse(item.getIcon()));
imageView.setImageUris((Uri[]) uris.toArray(new Uri[uris.size()]));
layout.addView(imageView);
TextView textView = new TextView(this.context);
textView.setText(item.getTitle());
textView.setTextColor(-1);
textView.setLayoutParams(new FrameLayout.LayoutParams(-1, -2));
textView.setGravity(1);
textView.setTextSize(10.0f);
textView.setLines(2);
layout.addView(textView);
return layout;
}
public void setAppWall(AppWall appWall) {
this.appWall = appWall;
notifyDataSetChanged();
}
public AppWall getAppWall() {
return this.appWall;
}
}
public DrawerContentView(Context context) {
super(context);
LinearLayout linearLayout = new LinearLayout(context);
this.feedbackButton = new Button(context);
this.feedbackButton.setText("FEEDBACK");
this.feedbackButton.setBackgroundDrawable(ResourceHelper.getPanelButton(context));
this.feedbackButton.setTypeface(Typeface.DEFAULT_BOLD);
this.feedbackButton.setTextColor(-1);
this.feedbackButton.setPadding(0, 0, 0, 0);
this.feedbackButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent("android.intent.action.SEND");
intent.setType(HtmlFormatter.TEXT_HTML);
intent.putExtra("android.intent.extra.EMAIL", new String[]{"adecosystems.questions@gmail.com"});
ApplicationInfo info = DrawerContentView.this.getContext().getApplicationInfo();
intent.putExtra("android.intent.extra.SUBJECT", DrawerContentView.this.getContext().getPackageManager().getApplicationLabel(info));
DrawerContentView.this.getContext().startActivity(Intent.createChooser(intent, "Send Email"));
}
});
this.rateusButton = new Button(context);
this.rateusButton.setText("RATE US");
this.rateusButton.setBackgroundDrawable(ResourceHelper.getPanelButton(context));
this.rateusButton.setTypeface(Typeface.DEFAULT_BOLD);
this.rateusButton.setTextColor(-1);
this.rateusButton.setPadding(0, 0, 0, 0);
this.rateusButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent("android.intent.action.VIEW");
intent.setData(Uri.parse("market://details?id=" + DrawerContentView.this.getContext().getPackageName()));
DrawerContentView.this.getContext().startActivity(intent);
}
});
LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(-1, MeasurmentUtils.dip2pixel(40, context));
p.bottomMargin = MeasurmentUtils.dip2pixel(8, context);
linearLayout.addView(this.rateusButton, p);
int padding = MeasurmentUtils.dip2pixel(12, context);
linearLayout.setPadding(padding, padding, padding, padding);
linearLayout.addView(this.feedbackButton, new LinearLayout.LayoutParams(-1, MeasurmentUtils.dip2pixel(40, context)));
TextView title = new TextView(getContext());
title.setPadding(0, padding / 2, 0, padding / 2);
title.setText("YOU MIGHT ALSO LIKE");
title.setGravity(1);
title.setTypeface(Typeface.DEFAULT_BOLD);
title.setTextColor(-1);
title.setTextSize(16.0f);
linearLayout.addView(title, new LinearLayout.LayoutParams(-1, -2));
this.progressBar = new ProgressBar(context);
FrameLayout layout = new FrameLayout(context);
this.adapter = new GridViewAdapter(context, null);
this.gridView = new GridView(context);
this.gridView.setNumColumns(3);
this.gridView.setColumnWidth(-1);
this.gridView.setAdapter((ListAdapter) this.adapter);
this.gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
AppWallItem item = (AppWallItem) arg0.getItemAtPosition(position);
Intent intent = new Intent("android.intent.action.VIEW");
intent.setData(Uri.parse(item.getLink()));
DrawerContentView.this.getContext().startActivity(intent);
}
});
layout.addView(this.gridView, new FrameLayout.LayoutParams(-1, -1));
FrameLayout.LayoutParams lparams = new FrameLayout.LayoutParams(-2, -2);
lparams.gravity = 17;
layout.addView(this.progressBar, lparams);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(-1, 0);
params.weight = 1.0f;
linearLayout.addView(layout, params);
BitmapDrawable d = (BitmapDrawable) ResourceHelper.getDrawable("sandpaper.png", context);
d.setTileModeXY(Shader.TileMode.REPEAT, Shader.TileMode.REPEAT);
setBackgroundDrawable(d);
linearLayout.setOrientation(1);
FrameLayout gradient = new FrameLayout(context);
GradientDrawable g = new GradientDrawable(GradientDrawable.Orientation.BOTTOM_TOP, new int[]{Color.parseColor("#1e7b89"), Color.parseColor("#589fb4")}) {
@Override
public void draw(Canvas canvas) {
super.draw(canvas);
}
};
gradient.setBackgroundDrawable(g);
addView(gradient, new FrameLayout.LayoutParams(-1, -1));
addView(linearLayout, new FrameLayout.LayoutParams(-1, -1));
}
public void load(AdParameters params) {
this.params = params;
reload();
}
private void reload() {
this.progressBar.setVisibility(0);
this.gridView.setVisibility(4);
if (this.appWallTask != null) {
this.appWallTask.cancel(true);
}
final Context fContext = getContext().getApplicationContext();
this.appWallTask = new AsyncTask<AdParameters, Void, Object>() {
@Override
public Object doInBackground(AdParameters... params) {
try {
return AdsProvider.get(fContext).loadAppWallSync(params[0]).getExtras().get("com.adeco.adsdk.mediation.AdsProvider.EXTRA_AD");
} catch (ServerCommunicationException e) {
return e;
}
}
@Override
protected void onPostExecute(Object result) {
DrawerContentView.this.appWallTask = null;
if (result instanceof AppWall) {
DrawerContentView.this.adapter.setAppWall((AppWall) result);
}
DrawerContentView.this.gridView.setVisibility(0);
DrawerContentView.this.progressBar.setVisibility(4);
}
};
this.appWallTask.execute(this.params);
}
}