package com.ved.musicmapapp;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.channels.FileChannel;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.json.JSONObject;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.pm.ActivityInfo;
import android.content.res.Configuration;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Environment;
import android.os.Handler;
import android.os.Message;
import android.os.Messenger;
import android.provider.MediaStore;
import android.provider.Settings.Secure;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.text.Html;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.WindowManager;
import android.view.ViewGroup.LayoutParams;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.AnimationUtils;
import android.view.animation.DecelerateInterpolator;
import android.view.animation.RotateAnimation;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.facebook.FacebookRequestError;
import com.facebook.HttpMethod;
import com.facebook.Request;
import com.facebook.RequestAsyncTask;
import com.facebook.Response;
import com.facebook.Session;
import com.google.android.gcm.GCMRegistrar;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener;
import com.ved.musicmapapp.Objects.Artist;
import com.ved.musicmapapp.Objects.User;
import com.ved.musicmapapp.fragments.AddPlaylistFragment;
import com.ved.musicmapapp.fragments.AroundUserFragment;
import com.ved.musicmapapp.fragments.ArtistFragment;
import com.ved.musicmapapp.fragments.CategoryDetailFragment;
import com.ved.musicmapapp.fragments.CategoryFragment;
import com.ved.musicmapapp.fragments.FollowYouFragment;
import com.ved.musicmapapp.fragments.GlobalUserFragment;
import com.ved.musicmapapp.fragments.InviteFriendFragment;
import com.ved.musicmapapp.fragments.LikeFragment;
import com.ved.musicmapapp.fragments.LoadingFragment;
import com.ved.musicmapapp.fragments.MainFragment;
import com.ved.musicmapapp.fragments.PlaylistStatsFragment;
import com.ved.musicmapapp.fragments.PlaylistTracksFragment;
import com.ved.musicmapapp.fragments.SettingsFragment;
import com.ved.musicmapapp.fragments.SimilarUserFragment;
import com.ved.musicmapapp.fragments.UserArtistsFragment;
import com.ved.musicmapapp.fragments.UserDetailsFragment;
import com.ved.musicmapapp.fragments.YouFollowFragment;
import com.ved.musicmapapp.providers.GetUserArtistListTask;
import com.ved.musicmapapp.providers.GetUserDetailTask;
import com.ved.musicmapapp.providers.GetUsersDataFromDBTask;
import com.ved.musicmapapp.providers.GetUsersDataTask;
import com.ved.musicmapapp.providers.LogoutTask;
import com.ved.musicmapapp.providers.PostSongToServerTask;
import com.ved.musicmapapp.providers.RegisterGCMTask;
//import com.ved.musicmapapp.providers.SyncSongTask;
import com.ved.musicmapapp.receiver.LikeBroadcastReceiver;
import com.ved.musicmapapp.receiver.NotificationBroadcastReceiver;
import com.ved.musicmapapp.receiver.ProcessSyncingReceiver;
import com.ved.musicmapapp.services.SongPostingService;
import com.ved.musicmapapp.services.UpdateLocationService;
import com.ved.musicmapapp.utils.LogFile;
import com.ved.musicmapapp.utils.SingleMediaScanner;
import com.ved.musicmapapp.utils.Statics;
import com.ved.musicmapapp.views.MySlidingPaneLayout;
public class MainActivity extends BaseActivity {
public static final String BROAST_CAST_VIEW_USER_DETAIL = "com.ved.musicmapapp.viewUserDetail";
// public static boolean isMainSyncing = false;
public static final int SPLASH_RQ_CODE = 1001;
public static final int FRAG_YOU_FOLLOW = 0;
public static final int FRAG_ARROUND_ME = 1;
public static final int FRAG_SIMILAR_ME = 2;
public static final int FRAG_PLAYLIST_STATS = 3;
public static final int FRAG_INVITE_FB = 4;
public static final int FRAG_SETTING = 5;
public static final int FRAG_ADD_PLAYLIST = 6;
public static final int FRAG_MY_SHARE = 7;
public static final int FRAG_GLOBAL_USER = 8;
public static final int FRAG_SHARES = 9;
private int CURENT_FRAG = 0;
private MySlidingPaneLayout slide;
private boolean ready = false,
hasReload = false;
private boolean reloadFollower = false, reloadLike = false;
private CountDownTimer cDT;
private EditText edt_search;
private ImageView imvAddPlaylist;
private ImageView tv_title;
private TextView tv_title_bar;
private ImageView profile_pic_menu;
private TextView tv_name_nav, tvNoSongShare , tvNoFollowYou ;
private LinearLayout ll_people, ll_similar, ll_arround, ll_invite,
ll_settings, ll_splash_hidden;
private LinearLayout ll_current;
private ProgressDialog pd;
private SharedPreferences prefs;
private Editor edt;
private String regId;
// private SyncSongTask syncTask;
private PostSongToServerTask postSongsTask;
private GetUsersDataTask dataTask;
private ImageLoader imageLoader;
private DisplayImageOptions options;
private View viewLoading;
public String follow_fbid;
// public boolean[] isLoaded;
public static boolean isSync;
private ImageView mActionShare;
private ImageView drawerIcon;
// private View mSplashLayout;
private OnShareListener mOnShareListener;
private boolean isRefreshing = false;
private SharedPreferences mPrefs;
// private ProgressBar mProgSyncing, mProgSyncingBar;
private ImageView mImvRefresh;
private LikeBroadcastReceiver likeReceiver;
private NotificationBroadcastReceiver mNotificationBroadcastReceiver;
private ProcessSyncingReceiver mProcessSyncingReciever;
private Handler mHandler;
Thread t;
public static boolean FROM_GCM = false;
public static String FB_ID_GCM = "";
SharedPreferences prefsApp;
boolean isCheck = false;
// private View myViewLoadingFirst;
private Spinner sortSpinner;
boolean isServiceSyncing = false;
ImageView loadingDisc;
RotateAnimation rotate;
public boolean getFirstRun() {
return mPrefs.getBoolean("firstRun", true);
}
public void setRunned() {
SharedPreferences.Editor edit = mPrefs.edit();
edit.putBoolean("firstRun", false);
edit.commit();
}
public void firstRunPreferences() {
Context mContext = this.getApplicationContext();
mPrefs = mContext.getSharedPreferences("myAppPrefs", 0);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
prefsApp = getSharedPreferences("MUSIC_MAP", MODE_PRIVATE);
if (prefsApp.getString("FB_ID", "").length() == 0) {
if (Statics.hashUsers != null) {
Statics.hashUsers.clear();
}
startActivity(new Intent(this, LoginAcitivity.class));
finish();
} else {
Statics.isFollowingLoaded = false;
Statics.isFollowersLoaded = false;
Statics.isWhoToFollowLoaded = false;
restoreState(savedInstanceState);
setContentView(R.layout.activity_main);
init();
firstRunPreferences();
if (getFirstRun()) {
setRunned();
}
if (prefs.getBoolean("IS_FIRST_TIME", true)) {
getSongExit();
Log.e("check","Calling from In get All user's data in bg from oncreate");
getAllUsersDataInBg();
}
// showDialog();
Intent intent = new Intent(this, UpdateLocationService.class);
startService(intent);
mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
if (msg != null) {
switch (msg.what) {
case 2:
String fbId = msg.getData()
.getString("FOLLOW_FBID");
if (fbId != null && fbId.length() > 0) {
if (Statics.hashUsers != null) {
User user = Statics.hashUsers.get(fbId);
if (user != null) {
openUserDetail(user);
} else {
if (Statics.curUser != null) {
new GetUserDetailTask(
MainActivity.this,
Statics.curUser.getFbid(),
fbId) {
protected void onPostExecute(
User result) {
super.onPostExecute(result);
openUserDetail(result);
}
}.execute();
}
}
}
}
default:
int noFollow = msg.getData().getInt("no_follow");
if (Statics.curUser != null) {
Statics.curUser.setTotalFollowYou(noFollow);
Fragment currentFragment = getSupportFragmentManager()
.findFragmentById(R.id.frame_content);
if (currentFragment instanceof MainFragment) {
MainFragment mf = (MainFragment) currentFragment;
// MainFragment.TabInfo ti = mf.getMapTabInfo().get("FOLLOWERS");
// FollowYouFragment fragment = (FollowYouFragment) ti.fragment;
FollowYouFragment fragment = (FollowYouFragment) mf.getTab(1);
fragment.reloadData();
} else {
reloadFollower = true;
}
}
}
}
super.handleMessage(msg);
}
};
isSync = false;
LogFile.TEMP_FOLDER = Environment.getExternalStorageDirectory()
.getAbsolutePath();
GCMRegistrar.checkDevice(MainActivity.this);
GCMRegistrar.checkManifest(MainActivity.this);
follow_fbid = getIntent().getStringExtra("FOLLOW_FBID");
// Get data from local
if (!prefs.getBoolean("IS_FIRST_TIME", true)) {
GetUsersDataFromDBTask dbDataFetchingTask = new GetUsersDataFromDBTask(this, prefs.getString("FB_ID", "")) {
@Override
public void onSuccess(User followUser) {
slide.setVisibility(View.INVISIBLE);
dismissDialog();
String msg = getString(R.string.main_shared_songs_msg_6,prefs.getString("sPhones", "0"));
String msg1 = getString(R.string.main_shared_songs_msg_7,prefs.getString("sExists", "0"));
tvNoSongShare.setText(Html.fromHtml(msg));
tvNoFollowYou.setText(Html.fromHtml(msg1));
if (Statics.curUser != null) {
MainFragment m2 = new MainFragment();
m2.setCurTab(0);
setNewPage(m2);
// startSyncing(false);
}
if(follow_fbid != null){
if (Statics.curUser != null) {
new GetUserDetailTask(MainActivity.this, Statics.curUser.getFbid(), follow_fbid) {
protected void onPostExecute(User result) {
super.onPostExecute(result);
if(result != null)
openUserDetail(result);
else
Toast.makeText(MainActivity.this, "Unable to get User details from server", Toast.LENGTH_SHORT).show();
}
}.execute();
}
}
gcmRegistration();
// Fetch All User Details in BG
getAllUsersDataInBg();
};
};
dbDataFetchingTask.execute();
}
mNotificationBroadcastReceiver = new NotificationBroadcastReceiver();
mNotificationBroadcastReceiver
.setMessenger(new Messenger(mHandler));
mProcessSyncingReciever = new ProcessSyncingReceiver() {
@Override
public void onStartProcess() {
super.onStartProcess();
Log.e("check","In onstart process ");
startSyncNdCleanAnimation();
}
@Override
public void onUpdateProcess(String message) {
super.onUpdateProcess(message);
/// Log.e("check","In onupdate process ");
tvNoSongShare.setText(message);
}
@Override
public void onStopProcess(boolean hasData) {
super.onStopProcess(hasData);
setNoSongText(true);
// Log.e("check","In get All user's data in bg from onstop process");
// getAllUsersDataInBg();
stopSynchCleanAnimation();
}
@Override
public void onReloadProcess() {
super.onReloadProcess();
// getAllUsersDataInBg();
}
};
registerReceiver(mNotificationBroadcastReceiver, new IntentFilter(BROAST_CAST_VIEW_USER_DETAIL));
IntentFilter iProcessFilter = new IntentFilter();
iProcessFilter.addAction(ProcessSyncingReceiver.BROAST_CAST_START_SYNCING);
iProcessFilter.addAction(ProcessSyncingReceiver.BROAST_CAST_UPDATE_SYNCING);
iProcessFilter.addAction(ProcessSyncingReceiver.BROAST_CAST_STOP_SYNCING);
iProcessFilter.addAction(ProcessSyncingReceiver.BROAST_CAST_RELOAD);
registerReceiver(mProcessSyncingReciever, iProcessFilter);
}
}
private class StartSyncServiceTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
Intent intent = new Intent(MainActivity.this, SongPostingService.class);
PendingIntent pintent = PendingIntent.getService(MainActivity.this, 0, intent, 0);
AlarmManager alarm = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
//alarm.setInexactRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis(), 60000 , pintent);
alarm.setInexactRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis(), 4*3600000 , pintent);
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
}
}
private void getSongExit() {
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
InputStream instream = null;
String fbjson = prefs.getString("FB_JSON", "");
String fbid = prefs.getString("FB_ID", "");
String device_id = Secure.getString(getContentResolver(), Secure.ANDROID_ID);
try {
HttpParams httpParameters = new BasicHttpParams();
int timeoutConnection = 20000;
HttpConnectionParams.setConnectionTimeout(httpParameters,timeoutConnection);
int timeoutSocket = 20000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
HttpClient httpclient = new DefaultHttpClient(httpParameters);
HttpPost httppost = new HttpPost(Statics.WS_PATH + "getSongExist.php");
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
nvps.add(new BasicNameValuePair("fbid", fbid));
nvps.add(new BasicNameValuePair("fbusername", prefs.getString("FB_USERNAME", "")));
nvps.add(new BasicNameValuePair("device_id", device_id));
nvps.add(new BasicNameValuePair("fbjson", fbjson));
httppost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
HttpResponse response = httpclient.execute(httppost);
// edt.putString("DATA_UPLOAD", "");
// edt.commit();
HttpEntity entity = response.getEntity();
if (entity != null) {
// get the response content as a string
instream = entity.getContent();
BufferedReader reader = new BufferedReader(
new InputStreamReader(instream, "UTF-8"));
String line;
StringBuilder sb1 = new StringBuilder("");
while ((line = reader.readLine()) != null) {
sb1.append(line + "\n");
}
JSONObject jsonObject = new JSONObject(sb1.toString().trim());
int user_id = Integer.parseInt(jsonObject.getString("userid").toString().trim());
edt.putString("FB_USERNAME", jsonObject.getString("fbusername"));
edt.putInt("USER_ID", user_id);
edt.commit();
}
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
if (prefs.getBoolean("IS_FIRST_TIME", true)) {
// stopLoadingAnimation();
ll_splash_hidden.setVisibility(View.GONE);
if (prefs.getInt("USER_ID", 0) > 0) {
Log.i("check","Calling GetFriendsFromFBActivity from post execute,,");
GetFriendsFromFacebookDialog dialog = new GetFriendsFromFacebookDialog(MainActivity.this);
dialog.getWindow().setLayout(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);
dialog.show();
// startActivityForResult(new Intent(MainActivity.this,
// GetFriendsFromFBActivity.class),
// SPLASH_RQ_CODE);
}
}
}
}.execute(null, null, null);
}
@SuppressWarnings("unchecked")
public void restoreState(Bundle savedIntances) {
if (savedIntances != null) {
Statics.curUser = (User) savedIntances
.getSerializable("current_user");
Statics.hashUsers = (HashMap<String, User>) savedIntances
.getSerializable("hash_user");
Statics.likeDatas = (ArrayList<Artist>) savedIntances
.getSerializable("like_date");
}
}
private void init() {
imageLoader = ImageLoader.getInstance();
options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.img_no_image)
.showImageForEmptyUri(R.drawable.img_no_image)
.showImageOnFail(R.drawable.img_no_image).cacheInMemory(true)
.cacheOnDisc(true).bitmapConfig(Bitmap.Config.RGB_565).build();
// loadingDisc = (ImageView) findViewById(R.id.loadingDisc);
// loadingDisc1 = (ImageView) findViewById(R.id.loadingDisc1);
// loadingDisc2 = (ImageView) findViewById(R.id.loadingDisc2);
viewLoading = findViewById(R.id.loadingMain);
// myViewLoadingFirst = findViewById(R.id.loadingMain1);
// mSplashLayout = findViewById(R.id.layout_splash);
// ll_splash_hidden.setVisibility(View.VISIBLE);
// mSplashLayout.setVisibility(View.VISIBLE);
mImvRefresh = (ImageView) findViewById(R.id.imv_refresh);
prefs = getSharedPreferences("MUSIC_MAP", MODE_PRIVATE);
edt = prefs.edit();
pd = new ProgressDialog(this);
pd.setMessage("Getting data...");
pd.setCancelable(false);
sortSpinner = (Spinner) findViewById(R.id.spinner_sort);
slide = (MySlidingPaneLayout) findViewById(R.id.sliding_std_en);
// _index=1;
cDT = new CountDownTimer(3000, 3000) {
@Override
public void onTick(long arg0) {
}
@Override
public void onFinish() {
ready = false;
}
};
edt_search = (EditText) findViewById(R.id.edt_search);
imvAddPlaylist = (ImageView) findViewById(R.id.imvAddPlaylist);
tv_title = (ImageView) findViewById(R.id.tv_title_bar);
tv_title_bar = (TextView)findViewById(R.id.title_bar);
tv_title_bar.setVisibility(View.GONE);
Typeface tf3 = Typeface.createFromAsset(getAssets(), "Raleway-Bold.otf");
tv_name_nav = (TextView) findViewById(R.id.tv_name_nav);
tvNoSongShare = (TextView) findViewById(R.id.tvNoSongShare);
tvNoFollowYou = (TextView) findViewById(R.id.tvNoFollowYou);
profile_pic_menu = (ImageView) findViewById(R.id.profile_pic_menu);
tv_name_nav.setText(prefs.getString("FB_NAME", ""));
imageLoader.displayImage(
"https://graph.facebook.com/" + prefs.getString("FB_ID", "")
+ "/picture?type=large", profile_pic_menu, options,
new ImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
}
@Override
public void onLoadingFailed(String imageUri, View view,
FailReason failReason) {
}
@Override
public void onLoadingComplete(String imageUri, View view,
Bitmap loadedImage) {
profile_pic_menu.setImageBitmap(loadedImage);
}
@Override
public void onLoadingCancelled(String imageUri, View view) {
}
});
ll_people = (LinearLayout) findViewById(R.id.ll_people);
ll_similar = (LinearLayout) findViewById(R.id.ll_similar);
ll_arround = (LinearLayout) findViewById(R.id.ll_arroundme);
ll_invite = (LinearLayout) findViewById(R.id.ll_invite);
ll_settings = (LinearLayout) findViewById(R.id.ll_settings);
ll_splash_hidden = (LinearLayout) findViewById(R.id.layout_splash_hidden);
ll_splash_hidden.setVisibility(View.VISIBLE);
loadingDisc = (ImageView)findViewById(R.id.loadingDisc);
startLoadingAnimation();
ll_people.setBackgroundColor(getResources().getColor(
R.color.settings_bg));
ll_current = ll_people;
drawerIcon = (ImageView) findViewById(R.id.imv_three_line);
drawerIcon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onNavigation(v);
}
});
mActionShare = (ImageView) findViewById(R.id.imvShare);
mActionShare.setVisibility(View.GONE);
mActionShare.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mOnShareListener != null) {
mOnShareListener.onShare();
}
}
});
}
public void startLoadingAnimation(){
rotate = new RotateAnimation(0, 360,
Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
0.5f);
rotate.setDuration(1500);
rotate.setRepeatCount(-1);
rotate.setFillAfter(true);
loadingDisc.startAnimation(rotate);
}
public void stopLoadingAnimation(){
rotate.cancel();
if(loadingDisc.getAnimation() != null)
loadingDisc.getAnimation().cancel();
loadingDisc.clearAnimation();
}
public void onNavigation(View v) {
if (slide.isOpen()) {
slide.closePane();
} else {
slide.openPane();
}
}
public void onLogout(View v) {
if (null == Statics.curUser)
return;
new LogoutTask(MainActivity.this).execute(Statics.curUser.getFbid());
slide.openPane();
Session session = Session.getActiveSession();
if (!session.isClosed()) {
session.closeAndClearTokenInformation();
}
Intent intent = new Intent(this, UpdateLocationService.class);
stopService(intent);
finish();
Intent i = new Intent(this, LoginAcitivity.class);
i.putExtra("LOGOUT", true);
startActivity(i);
}
public void onShares(View v) {
CURENT_FRAG = FRAG_SETTING;
setNewPage(new LikeFragment());
}
public void onYouFollow(View v) {
CURENT_FRAG = FRAG_YOU_FOLLOW;
setNewPage(new MainFragment());
}
public void onMyShare(View v) {
if (findViewById(R.id.prog_syncing_nav).getVisibility() == View.VISIBLE) {
return;
}
if (Statics.curUser.getArtists() == null) {
new GetUserArtistListTask(MainActivity.this,
Statics.curUser.getFbid(), Statics.curUser.getFbid()) {
protected void onPostExecute(User result) {
super.onPostExecute(result);
if (result != null) {
Statics.curUser = result;
CURENT_FRAG = FRAG_MY_SHARE;
UserDetailsFragment fragment = new UserDetailsFragment();
// UserDetailFragment fragment = new UserDetailFragment();
fragment.setUser(Statics.curUser);
Log.i("CUR", "" + Statics.curUser.getFullName());
setNewPage(fragment);
}
};
}.execute();
} else {
CURENT_FRAG = FRAG_MY_SHARE;
UserDetailsFragment fragment = new UserDetailsFragment();
fragment.setUser(Statics.curUser);
Log.i("CUR", "" + Statics.curUser.getFullName());
setNewPage(fragment);
}
}
public void onAddPlaylist(View v) {
CURENT_FRAG = FRAG_ADD_PLAYLIST;
setNewPage(AddPlaylistFragment.newInstance(2));
}
public void onArroundMe(View v) {
CURENT_FRAG = FRAG_ARROUND_ME;
setNewPage(new AroundUserFragment());
}
public void onSimilarToMe(View v) {
CURENT_FRAG = FRAG_SIMILAR_ME;
setNewPage(new SimilarUserFragment());
}
public void onInviteFriends(View v) {
CURENT_FRAG = FRAG_INVITE_FB;
setNewPage(new InviteFriendFragment());
}
public void onSettings(View v) {
CURENT_FRAG = FRAG_SETTING;
setNewPage(new SettingsFragment());
}
public void onSearch(View v) {
// imv_search.setVisibility(View.GONE);
// imv_close_search.setVisibility(View.VISIBLE);
edt_search.setVisibility(View.VISIBLE);
edt_search.startAnimation(AnimationUtils.loadAnimation(this,
R.anim.slide_from_top));
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(edt_search, 0);
}
public void onCloseSearch(View v) {
this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
// imv_search.setVisibility(View.VISIBLE);
// imv_close_search.setVisibility(View.GONE);
edt_search.startAnimation(AnimationUtils.loadAnimation(this,
R.anim.fade_to_top));
edt_search.setVisibility(View.GONE);
}
public void setNewPage(Fragment fragment) {
//slide.closePane();
if (slide.isOpen()) {
slide.closePane();
}
String tagName = "currentFragment";
// mActionShare.setVisibility(View.VISIBLE);
while (getSupportFragmentManager().getBackStackEntryCount() > 0) {
getSupportFragmentManager().popBackStackImmediate();
}
imvAddPlaylist.setVisibility(View.VISIBLE);
tv_title.setVisibility(View.VISIBLE);
tv_title_bar.setVisibility(View.GONE);
if (fragment instanceof MainFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
ll_people.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_people;
} else if (fragment instanceof PlaylistStatsFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
} else if (fragment instanceof GlobalUserFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
} else if (fragment instanceof AroundUserFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
ll_arround.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_arround;
} else if (fragment instanceof SimilarUserFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
ll_similar.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_similar;
}
else if (fragment instanceof InviteFriendFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
ll_invite.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_invite;
} else if (fragment instanceof SettingsFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
ll_settings.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_settings;
tv_title.setVisibility(View.GONE);
tv_title_bar.setVisibility(View.VISIBLE);
tv_title_bar.setText("SETTINGS");
mActionShare.setVisibility(View.GONE);
} else if (fragment instanceof AddPlaylistFragment) {
if (null != ll_current) {
//ll_current.setBackgroundResource(R.drawable.bg_nav);
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
} else if (fragment instanceof UserArtistsFragment) {
if (null != ll_current) {
ll_current.setBackgroundColor(getResources().getColor(R.color.white));
}
imvAddPlaylist.setVisibility(View.GONE);
tagName = "UserDetailFragment";
}
try {
getSupportFragmentManager().beginTransaction()
.replace(R.id.frame_content, fragment, tagName)
.commitAllowingStateLoss();
edt_search.setVisibility(View.GONE);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* LEADER BOARD
*/
public void onDetailLeader(View v) {
setNewPage(new CategoryFragment());
}
@Override
public void onBackPressed() {
if (slide.isOpen()) {
slide.closePane();
return;
}
Fragment currentFragment = getSupportFragmentManager()
.findFragmentById(R.id.frame_content);
if (currentFragment instanceof UserDetailsFragment) {
boolean result = ((UserDetailsFragment)currentFragment).onBack();
if(result)
return;
}
else if (currentFragment instanceof MainFragment) {
boolean result = ((MainFragment)currentFragment).onBack();
if(result)
return;
}
else if (currentFragment instanceof ArtistFragment) {
ArtistFragment frag = (ArtistFragment) currentFragment;
if(frag.isFullVideoScreen()){
frag.handleFullScreen(false);
return;
}
else{
if(frag.stopYoutubeVideo())
return;
}
}
else if (currentFragment instanceof PlaylistTracksFragment) {
PlaylistTracksFragment frag = (PlaylistTracksFragment) currentFragment;
if(frag.isFullVideoScreen()){
frag.handleFullScreen(false);
return;
}
else{
if(frag.stopYoutubeVideo())
return;
}
}
if (getSupportFragmentManager().getBackStackEntryCount() > 0) {
try{
super.onBackPressed();
}catch(Exception e){
e.printStackTrace();
finish();
}
currentFragment = getSupportFragmentManager().findFragmentById(R.id.frame_content);
if (currentFragment instanceof UserArtistsFragment && hasReload) {
UserArtistsFragment udf = (UserArtistsFragment) currentFragment;
udf.updateView();
} else if (currentFragment instanceof MainFragment) {
MainFragment mf = (MainFragment) currentFragment;
if (reloadFollower) {
Log.i("TEST", "22222222");
reloadFollower = false;
// MainFragment.TabInfo ti = mf.getMapTabInfo().get("Followers");
// FollowYouFragment fYF = (FollowYouFragment) ti.fragment;
YouFollowFragment fYF = (YouFollowFragment) mf.getTab(0);
fYF.getData(MainActivity.this);
}
if (reloadLike) {
Log.i("TEST", "444444444");
reloadLike = false;
MainFragment.TabInfo ti = mf.getMapTabInfo().get("Likes");
LikeFragment lF = (LikeFragment) ti.fragment;
lF.getData(MainActivity.this);
}
// if (hasReload) {
// hasReload = false;
//
// MainFragment.TabInfo ti = mf.getMapTabInfo().get(
// "Followings");
// YouFollowFragment yFF = (YouFollowFragment) ti.fragment;
// yFF.getData();
// }
setNavTitle(getString(R.string.app_name));
}
return;
}
if (currentFragment instanceof UserArtistsFragment) {
if (CURENT_FRAG == FRAG_SIMILAR_ME) {
onSimilarToMe(null);
} else if (CURENT_FRAG == FRAG_ARROUND_ME) {
onArroundMe(null);
} /*
* else if (CURENT_FRAG == FRAG_GLOBAL_USER) { onGlobalUser(null); }
*/else {
onYouFollow(null);
}
} else if (currentFragment instanceof MainFragment) {
if (ready) {
finish();
} else {
ready = true;
Statics.showToast(getBaseContext(), "Press back again to exit");
cDT.start();
}
} else if (currentFragment instanceof CategoryDetailFragment) {
setNewPage(new CategoryFragment());
} else if (currentFragment instanceof CategoryFragment) {
setNewPage(new PlaylistStatsFragment());
}
else {
setNewPage(new MainFragment());
if (null != ll_current) {
// ll_current.setBackgroundResource(R.drawable.bg_nav);
ll_current.setBackgroundResource(R.color.white);
}
ll_people.setBackgroundColor(getResources().getColor(R.color.settings_bg));
ll_current = ll_people;
}
}
public void onRefresh(View v) {
slide.closePane();
// if (null != syncTask) {
// syncTask.cancel(true);
// }
if (null != postSongsTask) {
postSongsTask.cancel(true);
}
isRefreshing = true;
startSyncing(true);
// Intent send = new Intent("com.ved.musicmapapp.service.syncsong");
// sendBroadcast(send);
// Log.e("check","In get All user's data in bg from on refresh");
// getAllUsersDataInBg();
}
public void startSyncing(boolean doPosting) {
Log.e("check","IN start syncing,,,");
if (isServiceSyncing) {
return;
}
postSongsTask = new PostSongToServerTask(this,doPosting) {
@Override
protected void onPreExecute() {
isServiceSyncing = true;
super.onPreExecute();
// startSyncNdCleanAnimation();
Log.i("SyncSongTask", "in Update Location Service");
}
@Override
protected void onPostExecute(Boolean result) {
super.onPostExecute(result);
isServiceSyncing = false;
setNoSongText(true);
// stopSynchCleanAnimation();
}
@Override
protected void onCancelled(Boolean result) {
super.onCancelled(result);
Log.i("SyncSongTask", "cancelled");
// setNoSongText(true);
isServiceSyncing = false;
// stopSynchCleanAnimation();
}
};
postSongsTask.execute();
}
public void onShare() {
String sharedUrl = Statics.WEB_APP_URL + Statics.curUser.getUserName();
String shareBody;
if (Statics.curUser != null && Statics.curUser.getArtists() != null) {
if (Statics.curUser.getArtists().size() == 1) {
shareBody = getString(R.string.share_user_current_user_,
Statics.curUser.getArtists().get(0).getName());
} else {
shareBody = getString(R.string.share_user_current_user,
Statics.curUser.getArtists().get(0).getName(),
Statics.curUser.getArtists().size() - 1);
}
shareBody += "\n" + sharedUrl;
Intent sharingIntent = new Intent(
android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent
.putExtra(android.content.Intent.EXTRA_TEXT, shareBody);
startActivity(Intent.createChooser(sharingIntent, "Share"));
}
}
private void getAllUsersDataInBg() {
Log.e("check","In get All user's data in bg");
UpdateLocationService.isGetData = false;
isRefreshing = true;
dataTask = new GetUsersDataTask(this, follow_fbid) {
@Override
public void onSuccess(User followUser) {
Log.e("check","In get All user's data in bg on success//////");
isRefreshing = false;
if (Statics.curUser != null)
{
viewLoading.setVisibility(View.GONE);
}
fillDataToFragments(followUser);
dismissDialog();
if (prefs.getBoolean("IS_FIRST_TIME", true)) {
StartSyncServiceTask task = new StartSyncServiceTask();
task.execute();
}
};
};
dataTask.execute();
}
private void fillDataToFragments(User followUser) {
// Fill data to Fragment
Fragment currentFragment = getSupportFragmentManager()
.findFragmentById(R.id.frame_content);
int lastTab = 0;
if (null != Statics.curUser && Statics.curUser.getNoSong() == 0) {
CURENT_FRAG = FRAG_SIMILAR_ME;
setNewPage(new SimilarUserFragment());
}
//else if (null != followUser && null != follow_fbid)
// {
// openUserDetail(followUser);
// }
else if( currentFragment instanceof LoadingFragment) {
hasReload = false;
MainFragment m2 = new MainFragment();
m2.setCurTab(lastTab);
setNewPage(m2);
}
else if (currentFragment instanceof MainFragment) {
MainFragment m1 = (MainFragment) currentFragment;
lastTab = m1.getCurTab();
setNewPage(m1);
}
}
private void gcmRegistration() {
regId = GCMRegistrar.getRegistrationId(MainActivity.this);
if (regId.equals("")) {
GCMRegistrar.register(MainActivity.this,
Statics.GCM_SENDER_ID);
} else {
if (GCMRegistrar
.isRegisteredOnServer(MainActivity.this)) {
// Skips registration.
} else {
GCMRegistrar.setRegisteredOnServer(
MainActivity.this, true);
}
if(Statics.curUser != null) {
new RegisterGCMTask(MainActivity.this,
Statics.curUser.getFbid(), regId).execute();
}
}
}
public EditText getEdtSearch() {
return edt_search;
}
public ImageView getImvAddPlaylist() {
return imvAddPlaylist;
}
public void postOnWall() {
Session session = Session.getActiveSession();
if (session != null) {
Bundle postParams = new Bundle();
postParams.putString("name", "MusicMap Application");
postParams.putString("caption",
"I have uploaded the data to my app");
postParams.putString(
"link",
Statics.DATAPATH + "users/"
+ prefs.getString("FB_USERNAME", ""));
postParams.putString("place", "203682879660695");
Request.Callback callback = new Request.Callback() {
public void onCompleted(Response response) {
FacebookRequestError error = response.getError();
if (error != null) {
Toast.makeText(MainActivity.this,
error.getErrorMessage(), Toast.LENGTH_SHORT)
.show();
} else {
Toast.makeText(MainActivity.this,
"Posted to facebook!", Toast.LENGTH_SHORT)
.show();
}
}
};
Request request = new Request(session, "me/feed", postParams,
HttpMethod.POST, callback);
RequestAsyncTask task = new RequestAsyncTask(request);
task.execute();
}
}
@Override
protected void onDestroy() {
// if (null != syncTask)
// syncTask.cancel(true);
if (null != postSongsTask)
postSongsTask.cancel(true);
if (null != dataTask)
dataTask.cancel(true);
isSync = false;
follow_fbid = null;
if (likeReceiver != null)
unregisterReceiver(likeReceiver);
if (mProcessSyncingReciever != null)
unregisterReceiver(mProcessSyncingReciever);
// unregisterReceiver(networkStateReceiver);
if (mNotificationBroadcastReceiver != null)
unregisterReceiver(mNotificationBroadcastReceiver);
try {
GCMRegistrar.onDestroy(this);
} catch (Exception e) {
}
/*
* new SaveDataTask(getApplicationContext(), users){
*
* @Override public void doneSave() { // TODO Auto-generated method stub
*
* } }.execute();
*/
super.onDestroy();
}
public void loadScreenAfterDialog(){
// myViewLoadingFirst.setVisibility(View.GONE);
// ll_splash_hidden.setVisibility(View.GONE);
edt.putBoolean("IS_FIRST_TIME", false);
edt.commit();
if (Statics.curUser != null) {
dismissDialog();
MainFragment m2 = new MainFragment();
m2.setCurTab(0);
setNewPage(m2);
stopLoadingAnimation();
}
else{
setNewPage(new LoadingFragment());
ll_splash_hidden.setVisibility(View.VISIBLE);
startLoadingAnimation();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.i("check","On activity result");
// if (requestCode == SPLASH_RQ_CODE) {
//// myViewLoadingFirst.setVisibility(View.GONE);
//// ll_splash_hidden.setVisibility(View.GONE);
//
// edt.putBoolean("IS_FIRST_TIME", false);
// edt.commit();
//
// if (Statics.curUser != null) {
// dismissDialog();
//
// MainFragment m2 = new MainFragment();
// m2.setCurTab(0);
// setNewPage(m2);
// stopLoadingAnimation();
// }
// else{
// setNewPage(new LoadingFragment());
// ll_splash_hidden.setVisibility(View.VISIBLE);
// startLoadingAnimation();
// }
//// Log.e("check","Calling get All user's data in bg from activity result");
//// getAllUsersDataInBg();
// }
}
private void setNoSongText(boolean isFromRefresh) {
try{
// if (Statics.curUser != null && Statics.curUser.getNoSong() > 0)
{
String msg = null;
String msg1 = null;
// if(isFromRefresh)
{
if (PostSongToServerTask.sPhones != null && PostSongToServerTask.exists != null ) {
msg = getString(R.string.main_shared_songs_msg_6,PostSongToServerTask.exists.size());
msg1 = getString(R.string.main_shared_songs_msg_7,PostSongToServerTask.sPhones.size());
}
}
// else{
// if (SyncSongTask.sPhones != null && SyncSongTask.exists != null ) {
// msg = getString(R.string.main_shared_songs_msg_6,SyncSongTask.exists.size());
// msg1 = getString(R.string.main_shared_songs_msg_7,SyncSongTask.sPhones.size());
// }
// }
tvNoSongShare.setText(Html.fromHtml(msg));
tvNoFollowYou.setText(Html.fromHtml(msg1));
}
}
catch(Exception e){
e.printStackTrace();
}
}
private void dismissDialog() {
Log.e("check","in Dismiss dialog,,,,");
if (Statics.curUser != null)
{
slide.setVisibility(View.VISIBLE);
stopLoadingAnimation();
ll_splash_hidden.setVisibility(View.GONE);
}
}
public void setHasReload(boolean val) {
hasReload = val;
}
SingleMediaScanner mMediaScanner = null;
@Override
protected void onPause() {
super.onPause();
stopLoadingAnimation();
}
@Override
protected void onResume() {
if (mMediaScanner != null) {
mMediaScanner = new SingleMediaScanner(this,
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI.getPath());
}
super.onResume();
openUserProfileFromNotification();
/* if (FROM_GCM) {
if (Statics.hashUsers != null) {
User user = Statics.hashUsers.get(FB_ID_GCM);
if (user != null) {
openUserDetail(user);
} else {
if (Statics.curUser != null) {
new GetUserDetailTask(MainActivity.this,
Statics.curUser.getFbid(), FB_ID_GCM) {
protected void onPostExecute(User result) {
super.onPostExecute(result);
openUserDetail(result);
}
}.execute();
}
}
}
FROM_GCM = false;
}*/
}
public void openUserProfileFromNotification(){
if (FROM_GCM) {
if (Statics.hashUsers != null) {
// User user = Statics.hashUsers.get(FB_ID_GCM);
/*if (user != null) {
openUserDetail(user);
} else*/ {
if (Statics.curUser != null) {
new GetUserDetailTask(MainActivity.this,
Statics.curUser.getFbid(), FB_ID_GCM) {
protected void onPostExecute(User result) {
super.onPostExecute(result);
openUserDetail(result);
}
}.execute();
}
}
FROM_GCM = false;
}
}
}
private void openUserDetail(User user) {
setNavTitle("User's Detail");
UserDetailsFragment fragment = new UserDetailsFragment();
fragment.setUser(user);
FragmentTransaction fragmentTransaction = MainActivity.this
.getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame_content, fragment,"UserDetailFragment");
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commitAllowingStateLoss();
}
public interface OnShareListener {
public void onShare();
}
public void showShareAction(OnShareListener listener) {
if (mActionShare != null) {
mActionShare.postDelayed(new Runnable() {
@Override
public void run() {
mActionShare.setVisibility(View.VISIBLE);
}
}, 100);
}
mOnShareListener = listener;
}
public void hideShareAction() {
if (mActionShare != null) {
mActionShare.setVisibility(View.GONE);
}
mOnShareListener = null;
}
public void setNavTitle(String title) {
try {
// tv_title.setText(title);
} catch (Exception e) {
}
}
public void setNavTitle(int titleRes) {
try {
// tv_title.setText(titleRes);
} catch (Exception e) {
}
}
@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putSerializable("current_user", Statics.curUser);
outState.putSerializable("hash_user", Statics.hashUsers);
outState.putSerializable("like_date", Statics.likeDatas);
// super.onSaveInstanceState(outState);
}
String[] _methodStrings = new String[]{"Sort","A - Z"};
public void CreateSpinner(){
final ArrayList<String> reasonArray = new ArrayList<String>();
for(int i = 0; i <_methodStrings.length;i ++){
reasonArray.add(_methodStrings[i]);
}
sortSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
String sortString = sortSpinner.getSelectedItem().toString();
ArtistFragment fragment = (ArtistFragment) getSupportFragmentManager().findFragmentByTag("ArtistFragment");
if(fragment != null){
if(fragment.isVisible()){
if(sortString.contains("A - Z"))
fragment.sortAscending();
}
}
Fragment currentFragment = getSupportFragmentManager().findFragmentById(R.id.frame_content);
// UserDetailFragment frag = (UserDetailFragment) getSupportFragmentManager().findFragmentByTag("UserDetailFragment");
if(currentFragment != null){
if(currentFragment.getClass().equals(UserArtistsFragment.class)){
if(currentFragment.isVisible()){
if(sortString.contains("A - Z"))
((UserArtistsFragment)currentFragment).sortAscending();
}
}
}
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
}
});
ArrayAdapter<String> methodAdapter = new ArrayAdapter<String>(this, R.drawable.spinner_item, reasonArray){
@Override
public View getDropDownView(int position, View convertView,android.view.ViewGroup parent){
View v = convertView;
if (v == null) {
Context mContext = getBaseContext();
LayoutInflater vi = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.simple_spinner_dropdown_item, null);
}
// The text view of the spinner list view
TextView tv = (TextView) v.findViewById(android.R.id.text1);
v.findViewById(R.id.spinner_img).setVisibility(View.GONE);
String val = reasonArray.get(position);
// remove the extra text here
tv.setText(val.replace(":False", ""));
boolean disabled = !isEnabled(position);
if(disabled){tv.setTextColor(Color.GRAY);}
else{tv.setTextColor(Color.WHITE);}
return v;
}
};
methodAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sortSpinner.setAdapter(methodAdapter);
}
public void showSpinnerForSort(){/*
View imvShareMargin = findViewById(R.id.imvShareMargin);
View spinnerMargin = findViewById(R.id.spinnerMargin);
imvShareMargin.setVisibility(View.GONE);
spinnerMargin.setVisibility(View.VISIBLE);
hideShareAction();
CreateSpinner();
sortSpinner.setVisibility(View.VISIBLE);
*/}
public void hideSpinnerForSort(){/*
View imvShareMargin = findViewById(R.id.imvShareMargin);
View spinnerMargin = findViewById(R.id.spinnerMargin);
imvShareMargin.setVisibility(View.VISIBLE);
spinnerMargin.setVisibility(View.GONE);
sortSpinner.setVisibility(View.GONE);
mActionShare = (ImageView) findViewById(R.id.imvShare);
mActionShare.setVisibility(View.VISIBLE);
mActionShare.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mOnShareListener != null) {
mOnShareListener.onShare();
}
}
});
//CreateSpinner();
*/}
public static int count = 0;
public void pullDB() {
try {
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (sd.canWrite()) {
String currentDBPath = "/data/data/" + getPackageName() + "/databases/Database_MusicMap";
String backupDBPath = "backupname"+count+".db";
File currentDB = new File(currentDBPath);
File backupDB = new File(sd, backupDBPath);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
count++;
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void startSyncNdCleanAnimation() {
RotateAnimation anim = new RotateAnimation(0.0f, 360.0f,
Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
0.5f);
anim.setRepeatCount(Animation.INFINITE);
anim.setDuration(700);
if(mImvRefresh != null)
mImvRefresh.startAnimation(anim);
}
private void stopSynchCleanAnimation() {
if(mImvRefresh != null)
mImvRefresh.setAnimation(null);
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Log.e("check","Orientation is " + newConfig.orientation);
// setRequestedOrientation(newConfig.orientation);
}
}