1. Java / Говнокод #12366

    +74

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    @Override
    protected void onResume() {
        super.onResume();
        logUpdateTimer = new Timer();
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        TextView tv = (TextView)findViewById(R.id.logsView);
                        tv.setText(LogBuffer.getLogs());
                    }
                });
            }
        };
        logUpdateTimer.schedule(task, 0, 1000);
    }

    Собрался с силами и высрал реализовал свою задумку - уведомлялку о новых комментах на ГК под Андроид.
    Проверяет сток каждые 5 минут, если увидит новый коммент - вибрирует и моргает светодиодом, при клике по уведомлению открывает сток в браузере.

    https://github.com/bormand/govnotify

    P.S. Вопрос к явистам - можно вон то говнище, которое я привел в топике, как-то попроще записать?

    Запостил: bormand, 26 Декабря 2012

    Комментарии (22) RSS

    • Для тех кому интересно - APK: http://rghost.ru/42538828.
      md5: 0f0bd3a41449082c88a1a68b90eff72e
      Ответить
    • А что, есть уютненькое API?
      Ответить
      • Ага, RFC 2616 называется. Посмотреть можно тут.
        Ответить
        • Прочитал. В целом, очень понравилось, но местами слишком избыточно.
          Ответить
        • А если включить seriousCatMode, Страйко вообще планировал запиливать хоть какое-то подобие API? Я бы хоть iOS-клиент бы написал ради развлечения. Или разметка говнокода надежна и стабильна как CP866 в винде?
          Ответить
          • > Страйко вообще планировал запиливать хоть какое-то подобие API?
            Вроде как нет, и это проблема.
            Ответить
            • Это печально. А сорцы-то ГК открыты, или как всегда? Я бы даже запарился и накропал бы патч ради такого.
              Ответить
              • В подвале сайта ссылка Обратная связь.
                Ответить
              • Тот вариант, что на code.google, выглядит заброшенным. Собственно, поэтому энтузиасты пилят "вторую версию".
                Ответить
          • > разметка говнокода надежна и стабильна
            Ее уже давно никто не пилит...
            Ответить
    • .../govnotify <- какое замысловатое название)
      Ответить
      • > gov. notify
        Докладывает правительству, угу.

        P.S. Название родилось давным-давно вот тут: http://govnokod.ru/10374
        Ответить
    • http://pastebin.com/nFkX7aGd
      Если вдруг кому захочется :) Но меня достает то, что в минибуфере выводится информация о том, что контент обновился, и это иногда может сбить с толку, если там что-то другое печатать.
      Ответить
      • Эмакс? Кто куда, а эмаксеры все в эмакс тащат ;)
        Ответить
        • я не тащу... видимо, я пока ненастоящий емаксер.
          Ответить
          • По скобок множеству и нотации странной емаксера истинного отличишь ты.
            Будь бдителен, мимо проходя емаксера такого, ибо затащить в свой край неведомый может он тебя.
            Ответить
    • анонимный класс в анонимном классе
      we need to go deeper
      Ответить
      • ну всё. увидел класс в классе и обосрался
        так многие функциональщики к сожалению пишут, чтобы код получался короче и там у них лямбда в лямбде ... в лямбде
        Ответить
        • >чтобы код получался короче и там у них лямбда в лямбде
          Хотел тоже написать, но лень. Тот же js function в function в function.
          Я в жабе @Override в таких случаях убираю. Жутко увесисто.
          Ответить
          • Ну например код на Немерле:
            Есть лист листов listOfList.
            Нужно применить функцию f к каждому элементу листа в листе.
            И тут мы видим 2 вложенные лямбды:
            listOfList.Map( list => list.Map( item => f(item) ) )

            Красиво читается. А как ещё это подругому сделать, чтобы осталось также кратко?
            А бывает нужно более сложные вложения или операции (fold и тд) и имхо эта запись читается лучше любых других, особенно, если отформатировать:
            listOfList.Map( (list) => 
            {
              list.Map( (item) => 
              {
                f(item) 
              }) 
            })

            К слову можно так:
            listOfList.Map( _.Map(f) )
            Ответить
    • Немного допилил прогу:
      - если указать в настройках свой ник, говнотифи не будет оповещать о сообщениях от него
      - можно настраивать интервал синхронизации
      - можно настроить под вкусу цвет светодиода и вибросигнал
      Ответить

    Добавить комментарий