Posted on Leave a comment

Is android app in foreground

https://stackoverflow.com/questions/8489993/check-android-application-is-in-foreground-or-not

[code language=”java”]
class ForegroundCheckTask extends AsyncTask<Context, Void, Boolean> {

@Override
protected Boolean doInBackground(Context… params) {
final Context context = params[0].getApplicationContext();
return isAppOnForeground(context);
}

private boolean isAppOnForeground(Context context) {
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> appProcesses = activityManager.getRunningAppProcesses();
if (appProcesses == null) {
return false;
}
final String packageName = context.getPackageName();
for (RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.importance == RunningAppProcessInfo.IMPORTANCE_FOREGROUND && appProcess.processName.equals(packageName)) {
return true;
}
}
return false;
}
}

// Use like this:
boolean foregroud = new ForegroundCheckTask().execute(context).get();
[/code]

Posted on Leave a comment

Android: Multiple Click Actions on Single Text View

https://medium.com/viithiisys/android-multiple-click-actions-on-single-textview-c5fec71b6e25

[code language=”java”]
private static void singleTextView(TextView textView, final String userName, String status, final String songName) {

SpannableStringBuilder spanText = new SpannableStringBuilder();
spanText.append(userName);
spanText.setSpan(new ClickableSpan() {
@Override
public void onClick(View widget) {

// On Click Action

}

@Override
public void updateDrawState(TextPaint textPaint) {
textPaint.setColor(textPaint.linkColor); // you can use custom color
textPaint.setUnderlineText(false); // this remove the underline
}
}, spanText.length() – userName.length(), spanText.length(), 0);

spanText.append(status);
spanText.append(songName);
spanText.setSpan(new ClickableSpan() {
@Override
public void onClick(View widget) {

// On Click Action

}

@Override
public void updateDrawState(TextPaint textPaint) {
textPaint.setColor(textPaint.linkColor); // you can use custom color
textPaint.setUnderlineText(false); // this remove the underline
}
},spanText.length() – songName.length(), spanText.length(), 0);

textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setText(spanText, TextView.BufferType.SPANNABLE);

}
[/code]