Docker for dummies. Microservice. (https://habrahabr.ru/post/346634/)
Почему вы должны обратить внимание на Docker? [https://nuancesprog.ru/p/3161]
Список важнейших команд в Docker
[https://nuancesprog.ru/p/7359/]
Docker for dummies. Microservice. (https://habrahabr.ru/post/346634/)
Почему вы должны обратить внимание на Docker? [https://nuancesprog.ru/p/3161]
Список важнейших команд в Docker
[https://nuancesprog.ru/p/7359/]
https://stackoverflow.com/questions/8489993/check-android-application-is-in-foreground-or-not
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();
https://medium.com/viithiisys/android-multiple-click-actions-on-single-textview-c5fec71b6e25
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); }