use of com.sdsmdg.harjot.MusicDNA.headsethandler.HeadSetReceiver in project MusicDNA by harjot-oberai.
the class HomeActivity method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
screen_width = display.getWidth();
screen_height = display.getHeight();
ratio = (float) screen_height / (float) 1920;
ratio2 = (float) screen_width / (float) 1080;
ratio = Math.min(ratio, ratio2);
setContentView(R.layout.activity_home);
headSetReceiver = new HeadSetReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_HEADSET_PLUG);
registerReceiver(headSetReceiver, filter);
PackageInfo pInfo;
try {
pInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
versionName = pInfo.versionName;
versionCode = pInfo.versionCode;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
mEndButton = new Button(this);
mEndButton.setBackgroundColor(themeColor);
mEndButton.setTextColor(Color.WHITE);
tp = new TextPaint();
tp.setColor(themeColor);
tp.setTextSize(65 * ratio);
tp.setFakeBoldText(true);
recentsViewAll = (TextView) findViewById(R.id.recents_view_all);
recentsViewAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("recent");
}
});
playlistsViewAll = (TextView) findViewById(R.id.playlists_view_all);
playlistsViewAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("allPlaylists");
}
});
copyrightText = (TextView) findViewById(R.id.copyright_text);
copyrightText.setText("Music DNA v" + versionName);
if (SplashActivity.tf4 != null) {
try {
copyrightText.setTypeface(SplashActivity.tf4);
} catch (Exception e) {
e.printStackTrace();
}
}
imgLoader = new ImageLoader(this);
ctx = this;
initializeHeaderImages();
hasSoftNavbar = CommonUtils.hasNavBar(this);
statusBarHeightinDp = CommonUtils.getStatusBarHeight(this);
navBarHeightSizeinDp = hasSoftNavbar ? CommonUtils.getNavBarHeight(this) : 0;
serviceConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName className, IBinder service) {
// cast the IBinder and get MyService instance
MediaPlayerService.LocalBinder binder = (MediaPlayerService.LocalBinder) service;
myService = binder.getService();
bound = true;
// register
myService.setCallbacks(HomeActivity.this);
}
@Override
public void onServiceDisconnected(ComponentName arg0) {
bound = false;
}
};
minuteList = new ArrayList<>();
for (int i = 1; i < 25; i++) {
minuteList.add(String.valueOf(i * 5));
}
sleepHandler = new Handler();
lps = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lps.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
lps.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
int margin = ((Number) (getResources().getDisplayMetrics().density * 12)).intValue();
lps.setMargins(margin, margin, margin, navBarHeightSizeinDp + ((Number) (getResources().getDisplayMetrics().density * 5)).intValue());
fragMan = getSupportFragmentManager();
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
collapsingToolbar = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar);
if (SplashActivity.tf4 != null) {
collapsingToolbar.setCollapsedTitleTypeface(SplashActivity.tf4);
collapsingToolbar.setExpandedTitleTypeface(SplashActivity.tf4);
}
customLinearGradient = (CustomLinearGradient) findViewById(R.id.custom_linear_gradient);
customLinearGradient.setAlpha(170);
customLinearGradient.invalidate();
drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
navigationView = (NavigationView) findViewById(R.id.nav_view);
if (navigationView != null) {
navigationView.setNavigationItemSelectedListener(this);
}
navigationView.setCheckedItem(R.id.nav_home);
View header = navigationView.getHeaderView(0);
navImageView = (ImageView) header.findViewById(R.id.nav_image_view);
if (navImageView != null) {
navImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
PlayerFragment pFrag = getPlayerFragment();
if (pFrag != null) {
if (pFrag.mMediaPlayer != null && pFrag.mMediaPlayer.isPlaying()) {
onBackPressed();
isPlayerVisible = true;
// hideTabs();
showPlayer();
}
}
}
});
}
connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
PlayerFragment pFrag = playerFragment;
if (playerFragment != null) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
//Incoming call: Pause music
if (pFrag.mMediaPlayer != null && pFrag.mMediaPlayer.isPlaying()) {
wasMediaPlayerPlaying = true;
pFrag.togglePlayPause();
} else {
wasMediaPlayerPlaying = false;
}
} else if (state == TelephonyManager.CALL_STATE_IDLE) {
//Not in call: Play music
if (pFrag.mMediaPlayer != null && !pFrag.mMediaPlayer.isPlaying() && wasMediaPlayerPlaying) {
pFrag.togglePlayPause();
}
} else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
//A call is dialing, active or on hold
if (playerFragment.mMediaPlayer != null && pFrag.mMediaPlayer.isPlaying()) {
wasMediaPlayerPlaying = true;
pFrag.togglePlayPause();
} else {
wasMediaPlayerPlaying = false;
}
}
}
super.onCallStateChanged(state, incomingNumber);
}
};
TelephonyManager mgr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
if (mgr != null) {
mgr.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
}
mPrefs = getPreferences(MODE_PRIVATE);
prefsEditor = mPrefs.edit();
gson = new Gson();
main = this;
localBanner = (RelativeLayout) findViewById(R.id.localBanner);
favBanner = (ImageView) findViewById(R.id.favBanner);
recentBanner = (ImageView) findViewById(R.id.recentBanner);
folderBanner = (ImageView) findViewById(R.id.folderBanner);
savedDNABanner = (ImageView) findViewById(R.id.savedDNABanner);
localBannerPlayAll = (ImageView) findViewById(R.id.local_banner_play_all);
localBanner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("local");
}
});
favBanner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("favourite");
}
});
recentBanner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("recent");
}
});
folderBanner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("allFolders");
}
});
savedDNABanner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("allSavedDNAs");
}
});
localBannerPlayAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
queue.getQueue().clear();
for (int i = 0; i < localTrackList.size(); i++) {
UnifiedTrack ut = new UnifiedTrack(true, localTrackList.get(i), null);
queue.getQueue().add(ut);
}
if (queue.getQueue().size() > 0) {
Random r = new Random();
int tmp = r.nextInt(queue.getQueue().size());
queueCurrentIndex = tmp;
LocalTrack track = localTrackList.get(tmp);
localSelectedTrack = track;
streamSelected = false;
localSelected = true;
queueCall = false;
isReloaded = false;
onLocalTrackSelected(-1);
}
}
});
bottomToolbar = (FrameLayout) findViewById(R.id.bottomMargin);
spHome = (Toolbar) findViewById(R.id.smallPlayer_home);
playerControllerHome = (ImageView) findViewById(R.id.player_control_sp_home);
spImgHome = (CircleImageView) findViewById(R.id.selected_track_image_sp_home);
spTitleHome = (TextView) findViewById(R.id.selected_track_title_sp_home);
playerControllerHome.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (queue != null && queue.getQueue().size() > 0) {
onQueueItemClicked(queueCurrentIndex);
bottomToolbar.setVisibility(View.INVISIBLE);
}
}
});
playerControllerHome.setImageResource(R.drawable.ic_play_arrow_white_48dp);
spHome.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (queue != null && queue.getQueue().size() > 0) {
onQueueItemClicked(queueCurrentIndex);
bottomToolbar.setVisibility(View.INVISIBLE);
}
}
});
localRecyclerContainer = (RelativeLayout) findViewById(R.id.localRecyclerContainer);
recentsRecyclerContainer = (RelativeLayout) findViewById(R.id.recentsRecyclerContainer);
streamRecyclerContainer = (RelativeLayout) findViewById(R.id.streamRecyclerContainer);
playlistRecyclerContainer = (RelativeLayout) findViewById(R.id.playlistRecyclerContainer);
if (SplashActivity.tf4 != null) {
try {
((TextView) findViewById(R.id.playListRecyclerLabel)).setTypeface(SplashActivity.tf4);
((TextView) findViewById(R.id.recentsRecyclerLabel)).setTypeface(SplashActivity.tf4);
} catch (Exception e) {
e.printStackTrace();
}
}
localNothingText = (TextView) findViewById(R.id.localNothingText);
streamNothingText = (TextView) findViewById(R.id.streamNothingText);
recentsNothingText = (TextView) findViewById(R.id.recentsNothingText);
playlistNothingText = (TextView) findViewById(R.id.playlistNothingText);
localViewAll = (TextView) findViewById(R.id.localViewAll);
localViewAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("local");
}
});
streamViewAll = (TextView) findViewById(R.id.streamViewAll);
streamViewAll.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showFragment("stream");
}
});
progress = new Dialog(ctx);
progress.setCancelable(false);
progress.requestWindowFeature(Window.FEATURE_NO_TITLE);
progress.setContentView(R.layout.custom_progress_dialog);
progress.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
progress.show();
showCase = new ShowcaseView.Builder(this).blockAllTouches().singleShot(0).setStyle(R.style.CustomShowcaseTheme).useDecorViewAsParent().replaceEndButton(mEndButton).setContentTitlePaint(tp).setTarget(new ViewTarget(R.id.recentsRecyclerLabel, this)).setContentTitle("Recents and Playlists").setContentText("Here all you recent songs and playlists will be listed." + "Long press the cards or playlists for more options \n" + "\n" + "(Press Next to continue / Press back to Hide)").build();
showCase.setButtonText("Next");
showCase.setButtonPosition(lps);
showCase.overrideButtonClick(new View.OnClickListener() {
int count1 = 0;
@Override
public void onClick(View v) {
count1++;
switch(count1) {
case 1:
showCase.setTarget(new ViewTarget(R.id.local_banner_alt_showcase, (Activity) ctx));
showCase.setContentTitle("Local Songs");
showCase.setContentText("See all songs available locally, classified on basis of Artist and Album");
showCase.setButtonPosition(lps);
showCase.setButtonText("Next");
break;
case 2:
showCase.setTarget(new ViewTarget(searchView.getId(), (Activity) ctx));
showCase.setContentTitle("Search");
showCase.setContentText("Search for songs from local library and SoundCloud™");
showCase.setButtonPosition(lps);
showCase.setButtonText("Done");
break;
case 3:
showCase.hide();
break;
}
}
});
new loadSavedData().execute();
}
Aggregations