• Как обойти защиту от снятия скриншотов?

    zzWerOk
    @zzWerOk Автор вопроса
    Эм...
    Значит продолжил я копаться и вот что накопал:

    import numpy as np
    import cv2
    import mss
    
    while True:
    
        with mss.mss() as sct:
            monitor = {'top': 150, 'left': 100, 'width': 1920, 'height': 1080}
            img = np.array(sct.grab(monitor))
    
        cv2.imshow("test", np.array(img))
        if cv2.waitKey(25) & 0xFF == ord('q'):
            cv2.destroyAllWindows()
            break


    вот этот код позволил мне снимать экран с достаточно большой скоростью ФПС (точно не замерял еще, но 20 минимум на 2к разрешении). НО! При условии что я запускаю свое приложение перед запуском игры. Если же игра уже запущена, то мое приложение отказывается работать выдавая черный экран.

    Но протестировав пол часа в разрешении 2к я не заметил ни каких особых сложностей или проблем.

    Оставлю это тут, может кому пригодится
    Ответ написан
    Комментировать
  • Как распарсить сложный json с помощью библиотеки GSON?

    zzWerOk
    @zzWerOk
    Эм...
    а в каком он месте сложный?

    и почему бы не использовать JSONObject???

    пример:

    JSONObject result_json = new JSONObject(result)
    
        if (result_json.has("response")) {
            setResponse(data.get("response"));
        }


    далее, если не знаешь названия элементов, то :

    JSONObject groups_json = new JSONObject(result_json .get("groups").toString());
    
        Iterator<String> iter = groups_json.keys();
        while (iter.hasNext()) {
            String key = (String) iter.next();
            String value = groups_json.get(key).toString();
    
            key - имя элемента ("id","name","screen_name"...)
            value - значение элемента (163637512, "&#4326;The Rivera Dynasty&#4326;", "ofrivera"...)
    
        }
    Ответ написан
    Комментировать
  • Передача данных между активити.?

    zzWerOk
    @zzWerOk
    Эм...
    Для передачи данных из массива, к примеру, можно так:

    Intent NewActivityIntent;
    NewActivityIntent = new Intent(MainActivity.this, NewActivity.class);
    
    int items_count = 0;
    for (int i = 0; i < item_List.size(); i++) {
    
         String item_name = "item_" + items_count;
         NewActivityIntent.putExtra(item_name, "Данные из массива под номером " + i);
         items_count++;
    
    }
    
    NewActivityIntent.putExtra("items_count", items_count);

    В новом активити достать их можно так:
    Bundle extras = getIntent().getExtras();
    
    int items_count = extras.getInt("items_count");
    
    for (int i = 0; i < items_count; i++) {
         String string = "item_" + i;
         String string_item = extras.getStringArray(string);
         item_List.add(string_item );
    }


    Также можно передать массив строк всунув в параметр .putExtra("key",String[]) и достав вызвав метод extras.getStringArray("key");
    Ответ написан
    Комментировать
  • Пустой результат mysqli_query($link,$query), где искать?

    zzWerOk
    @zzWerOk Автор вопроса
    Эм...
    mysqli_error = пусто. Т.е. нет ошибок (из документации)

    "SELECT * FROM users LIMIT 1" - так же пусто как и в первом запросе.

    и как это понять? хм..

    решил проблему.

    Хостер поменял host к бд. Уточнил в онлайн справке и все заработало как и раньше.
    Ответ написан
    Комментировать