Вывод собственного меню в фрагменте

You need to use menu.clear() before inflating menus.

    @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        menu.clear();
        inflater.inflate(R.menu.menu, menu);
        super.onCreateOptionsMenu(menu, inflater);
    }

and

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setHasOptionsMenu(true);
    }

How to add Options Menu to Fragment in Android — Stack Overflow

Ручное обновление NGINX до версии 1.20.1 для Ubuntu 20.04 LTS

// Uninstall Nginx
sudo apt-get remove nginx
sudo apt purge nginx*

//Then, install Nginx following document: http://nginx.org/en/linux_packages.html#Ubuntu
sudo apt install curl gnupg2 ca-certificates lsb-release
echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx"| sudo tee /etc/apt/sources.list.d/nginx.list
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
sudo apt update
sudo apt install nginx

Оригинал с Update nginx in ubuntu 14.04 — Stack Overflow

Мое примечание: если обновление происходит с версии 1.18.* то требуется предварительно сохранить копию файлов из папки /etc/nginx/sites-available

Файлы из папки /etc/nginx/sites-enabled копировать не нужно, они лишь символьные ссылки.

После обновления до версии 1.20.* нужно вручную перенеси информацию в каталог /etc/nginx/conf.d

Создания скриншотов для AppStore

Для подключения iTunes допустимы следующие разрешения:

  • iPhone 3 + 4 (3,5 дюйма)
    • 640 х 960
  • iPhone 5, iPhone 5S, iPhone 5C (4 дюйма)
    • 640 х 1136
  • iPhone 6, iPhone 6S, iPhone 7, iPhone 8 (4,7 дюйма)
    • 750 х 1334
  • iPhone 6 Plus, iPhone 6S Plus, iPhone 7 Plus, iPhone 8 Plus (5,5 дюймов)
    • 1242 x 2208
    • Вам нужен скриншот в этом разрешении, телефон масштабирует их до 1080 х 1920
  • iPhone X (5,8 дюйма)
    • 1125 x 2436
  • iPhone XR (6,1 дюйма)
    • 828 х 1792
  • iPhone XS (5,8 дюйма)
    • 1125 x 2436
Читать далее «Создания скриншотов для AppStore»

PLV8 для Postgres 12

Если пытаться установить на Ubuntu 20.04 postgresql-plv8, то будет ошибка, что пакет не найден.

Для установки данного расширения на указанную выше ОС нужно собрать этот пакет вручную.

$ wget https://github.com/plv8/plv8/archive/v3.0.0.tar.gz
$ tar -xvzf v3.0.0.tar.gz
$ cd plv8-3.0.0
$ make

Возможные проблемы:

Нужно проверить если все эти программы, если нет, то установить:

Git
g++ or clang++
Python 2 (for v8)
pkg-config (linux only for v8)
libc++-dev (linux only)
libc++abi-dev (linux only)
libglib2.0-dev (ubuntu 20.04)
libtinfo5 (ubuntu 20.04)
ninja-build (ubuntu arm64)
  • Может отсутствовать make (apt install make)
  • Не будет ссылки на python
/usr/bin/env: ‘python’: No such file or directory

Устанавливаем python второй версии:

sudo apt install python2

И настраиваем ссылку:

sudo ln -s /usr/bin/python2 /usr/bin/python
sudo apt install postgresql-server-dev-12

Официальный сайт: PLV8 Documentation

Деобфускация кода exception в Firebase Crashlytics после падения приложения

Чтобы сделать код исключений в Firebase Crashlytics более читабельным все что нужно — это добавить эти три строчки в файл proguard-rules.pro:

-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
Читать далее «Деобфускация кода exception в Firebase Crashlytics после падения приложения»