package in.co.praveenkumar.mdroid.fragment;
import in.co.praveenkumar.R;
import in.co.praveenkumar.mdroid.helper.AppInterface.DonationInterface;
import in.co.praveenkumar.mdroid.helper.Param;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
public class AdFragment extends Fragment {
final String DEBUG_TAG = "AdFragment";
AdView mAdView;
DonationInterface donation;
Context context;
SharedPreferences settings;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_ad, container, false);
}
@Override
public void onAttach(Activity a) {
super.onAttach(a);
context = getActivity();
try {
this.donation = (DonationInterface) a;
} catch (ClassCastException e) {
e.printStackTrace();
Log.d(DEBUG_TAG, a.toString()
+ " did not implement ForumIdInterface.");
}
// Setup Shared preferences
settings = PreferenceManager.getDefaultSharedPreferences(context);
}
@Override
public void onActivityCreated(Bundle bundle) {
super.onActivityCreated(bundle);
mAdView = (AdView) getView().findViewById(R.id.adView);
// Hide ads if he is a pro user
if (donation != null && donation.isProUser() || Param.hideAdsForSession) {
mAdView.setVisibility(AdView.GONE);
return;
}
loadAds();
}
private void loadAds() {
mAdView.setVisibility(AdView.VISIBLE);
AdRequest adRequest = new AdRequest.Builder().addTestDevice(
"B3EEABB8EE11C2BE770B684D95219ECB").build();
mAdView.loadAd(adRequest);
}
/** Called when leaving the activity */
@Override
public void onPause() {
if (mAdView != null) {
mAdView.pause();
}
super.onPause();
}
/** Called when returning to the activity */
@Override
public void onResume() {
super.onResume();
if (mAdView != null) {
mAdView.resume();
// If Prouser, just skip settings check.
if (donation != null && donation.isProUser())
return;
// Ads based on setting update
if (Param.hideAdsForSession)
mAdView.setVisibility(AdView.GONE);
else
loadAds();
}
}
/** Called before the activity is destroyed */
@Override
public void onDestroy() {
if (mAdView != null) {
mAdView.destroy();
}
super.onDestroy();
}
}