• Как решить задачу по комбинаторике?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Нет, не в этом смысле)))
    Я всё понял, достаточно интересная идея, но проблема в том, что каким образом, вы формулы составляете? И по ним считается сумма первая и вторая, а потом сравнивается? И пожалуй главное - как сделать, чтобы комбинации не повторялись? Не шли 1 11111 1222222 и т.д. Извиняюсь, конечно, возможно глупые вопросы, но буквально немного не дохожу до решения
  • Как реализовать алгоритм комбинаторики в программе?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Хорошо, допустим, что такой вариант реализации есть. Но что делать с лишним числом, напомню, в задаче в этом диапазоне 1..20 есть ещё лишнее число.
  • Как решить задачу по комбинаторике?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Я немного не понял, куда формулы занести?
  • Как реализовать алгоритм комбинаторики в программе?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Алексей Черемисин, это значит, что нам необходимо сравнить две суммы чисел определённого расположения в этом порядке. Если есть возможность, покажите пример, пожалуйста
  • Как в java продлить линию?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Модератор, извиняюсь, обращу внимание!
  • Как задать угол направления объекта в Android Studio?

    SmerxDimas
    @SmerxDimas Автор вопроса
    EVGENY T., Вот когда пользователь выбрал направление движения(угол) и запустил шар по этому углу, возникает вопрос: Как реализовать начальные VX и VY. Vx и Vy постоянно добавляются к x и y персонажа. угол вычислил: angle = Math.asin(event.getY() / event.getX()); возможно понадобится. event.GetY - клац по экрану от пользователя, X соответственно. PlayerX и PlayerY -Начальные координаты шарика. Обновление экрана каждые 50 МС. Проблема в том, что надо его медленно перемещать, а не просто на тех координатах нарисовать.
  • Как задать угол направления объекта в Android Studio?

    SmerxDimas
    @SmerxDimas Автор вопроса
    EVGENY T., в поставленной задачи нельзя их использовать, надо придумать что-то другое. Проблема заключается только в поиске Vx и vY
  • Как задать угол направления объекта в Android Studio?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Раньше с delphi 2 года работал, возможно методы решения задач и стили написания кода остались от него;)
  • Как задать угол направления объекта в Android Studio?

    SmerxDimas
    @SmerxDimas Автор вопроса
    public void run() {       //Этот метод выполняется в побочном потоке        
                do {
                    draw.postInvalidate();
                    try {
                        Thread.sleep(50);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                } while (MyDraw.Gameisrunning);
            }
        }
    
    public class MyDraw extends View {
        static public int PlayerX;
        static int PlayerY;
        int PlayerR;
        float EndLx =0,EndLy=0; // В эти значения кидаем нажатие пользователя
        static float Vy = 0, Vx = 0;  // Эти значения плюсуются каждые 50 МС, в их определение собственно и есть проблема
        protected boolean fl = true;
        public static boolean Gameisrunning = true;
    
    protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            int OnePercentHeight = canvas.getHeight() / 100; // create percents value
            int OnePercentWidth = canvas.getWidth() / 100;
            canvas.drawColor(getResources().getColor(R.color.BackGroundColor)); // drawing backgroung
            Paint PaintPlayer = new Paint(); //Settings for ball of a player
            Paint PaintMainFrame = new Paint();             //settings for form rectangle
            Paint PaintWallGreen = new Paint(); //Settings for green walls
            PaintMainFrame.setColor(Color.GREEN);
            PaintMainFrame.setStyle(Paint.Style.STROKE);
            PaintMainFrame.setStrokeWidth(OnePercentWidth);
            PaintWallGreen.setColor(Color.GREEN);
            PaintWallGreen.setStyle(Paint.Style.FILL);
            PaintPlayer.setColor(Color.WHITE);
            PaintPlayer.setStyle(Paint.Style.FILL);
            frame MainFrame = new frame(0 + OnePercentWidth / 2, 0 + OnePercentWidth / 2, canvas.getWidth() - OnePercentWidth / 2, getHeight() - OnePercentWidth / 2, PaintMainFrame);
            Wall RightWall = new Wall(OnePercentWidth * 40, canvas.getHeight() - OnePercentHeight, OnePercentWidth * 43, OnePercentHeight * 60, PaintWallGreen);
            if (fl) {
                PlayerX = OnePercentWidth * 10;
                PlayerY = canvas.getHeight() - (OnePercentHeight * 8 + OnePercentWidth * 2);
                PlayerR = OnePercentWidth * 4;
                canvas.drawRect(RightWall.getX1(), RightWall.getY1(), RightWall.getX2(), RightWall.getY2(), RightWall.getPaint()); // drawing wall
                canvas.drawRect(MainFrame.getX1(), MainFrame.getY1(), MainFrame.getX2(), MainFrame.getY2(), MainFrame.getPaint()); // drawing form
                canvas.drawCircle(PlayerX, PlayerY, PlayerR, PaintPlayer); // drawing player
                Paint PaintLine = new Paint();
                PaintLine.setColor(Color.RED);
                PaintLine.setStrokeWidth(5);
                canvas.drawLine(PlayerX,PlayerY,EndLx,EndLy,PaintLine); //Пользователь нажатием выбирает координаты, ему помогает линия
            }
     else {
                update();
                Player player = new Player(PlayerX, PlayerY, PlayerR, PaintPlayer);
                canvas.drawCircle(PlayerX, PlayerY, PlayerR, PaintPlayer); // drawing player
                if (((player.getY1() <= MainFrame.getY1() + OnePercentWidth * 4) || (player.getY1() >= MainFrame.getY2() - OnePercentWidth * 4) || (player.getY1() + 50 >= RightWall.getY2()) && (player.getY1() + 60 <= RightWall.getY2()) && (player.getX1() - 50 < RightWall.getX2()))) {
                    ChangeY();
                }
    
                if ((player.getX1() <= MainFrame.getX1() + OnePercentWidth * 4) || (player.getX1() >= MainFrame.getX2() - OnePercentWidth * 4) || ((player.getX1() - PlayerR < RightWall.getX2()) && (player.getX1() + PlayerR > RightWall.getX1()) && (player.getY1() + PlayerR > RightWall.getY2()))) {
                    ChangeX();
                }
    
     canvas.drawRect(RightWall.getX1(), RightWall.getY1(), RightWall.getX2(), RightWall.getY2(), RightWall.getPaint()); // drawing wall
      canvas.drawRect(MainFrame.getX1(), MainFrame.getY1(), MainFrame.getX2(), MainFrame.getY2(), MainFrame.getPaint()); // drawing form
                canvas.drawCircle(PlayerX, PlayerY, PlayerR, PaintPlayer);

    Ну и функция выстрела по выбранной траектории пользователя, где не удаётся определить координаты соответствующие нужному углу.
    if (eventAction == MotionEvent.ACTION_DOWN) {
                if ((event.getX() < PlayerX + 50) && (event.getX() > PlayerX - 50) && (event.getY() < PlayerY + PlayerR) && (event.getY() > PlayerY - PlayerR)) {
                    fl = false;
                    Vy = ???;
                    Vx = ???;
                }
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Михаил Чварков, всё на postInvalidate сработало. Три дня с этой ерундой возился, спасибо, выручили
  • Вопрос по потокам в Android?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Огоромное спасибо!!! Уже три дня с такой ерундой вожусь!
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    --------- beginning of crash
    2018-11-13 07:40:50.411 17286-17457/com.smerxgames.mygameball E/AndroidRuntime: FATAL EXCEPTION: Thread-6
        Process: com.smerxgames.mygameball, PID: 17286
        android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
            at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:6953)
            at android.view.ViewRootImpl.invalidateChildInParent(ViewRootImpl.java:1120)
            at android.view.ViewGroup.invalidateChild(ViewGroup.java:5207)
            at android.view.View.invalidateInternal(View.java:13676)
            at android.view.View.invalidate(View.java:13640)
            at android.view.View.invalidate(View.java:13624)
        at com.smerxgames.mygameball.MainActivity$SomeThing.run(MainActivity.java:34)
    2018-11-13 07:40:50.428 1510-2807/? D/ActivityManagerInjector: ru.sberbankmobile:Metrica is killed by AMS with adj 906 ,do not allow restart
    2018-11-13 07:40:50.428 1510-2807/? D/ActivityManager: cleanUpApplicationRecord -- 16783
    2018-11-13 07:40:50.428 2336-2375/? I/octvm_klo: klo lock
    2018-11-13 07:40:50.428 2786-2984/? I/WtProcessController: Receive am_crash event for pid: 17286 pkg = com.smerxgames.mygameball
    2018-11-13 07:40:50.428 2786-2984/? W/KloServer: Aborted broadcast does not supprt for: com.smerxgames.mygameball
    2018-11-13 07:40:50.429 2786-2984/? E/WtProcessController: Error pid or pid not exist
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Дааа, отлично, решил попробовать в новом проекте, спасибо! Оно рисует, но, к сожалению, когда подставил цикл, приложение начало вылетать, делал по вашему примеру, только с потоками, а не таймером((
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            draw = new MyDraw(this);
            setContentView(draw);
            SomeThing Th = new SomeThing();
            Th.start();
        }
    
        class SomeThing extends Thread        
                implements Runnable       
        {
    
            public void run()     
            {
                for (int i = 5; i > 0; i--) { //подставляем цикл для анимации. С ним не заработает
                    try {
    draw.updateT();
                        draw.invalidate();
                        SomeThing.sleep(1000);
    
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    System.out.println("Привет из побочного потока! 1");
                }
            }
    }
    
    public class MyDraw extends View {
        static float vy0=500;
        static float vx0 =100;
        public MyDraw(Context context) {
            super(context);
    
     protected static void updateT(){
           vy0 += 10;
           vx0 += 10;
           Log.d("VX0",String.valueOf(vx0));
       }
    
    }
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    То есть если мы наследуем наш класс от Thread таким образом
    class SomeThing extends Thread            //Наследуем
                implements Runnable        //(содержащее метод run())
        {
    
            public void run()     
            {
    }

    У нас будут два потока(главный и наш созданный) которые выполняются одновременно?
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Михаил Чварков, вот теперь вообще запутался. Создал новый поток, в нём меняю координаты игрока, но они каким-то образом запускаются последовательно, по очереди 1 поток, второй, и только в конце Main. Ещё раз прочитал о потоках, там такого совсем не написано, сказано, что они должны выполняться одновременно, но тогда у меня почему друг за другом? Не знаю, может быть тут всё совсем элементарно, но не для меня(
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            int OnePercentHeight = canvas.getHeight() / 100; // create percents value
            int OnePercentWidth = canvas.getWidth() / 100;
            canvas.drawColor(getResources().getColor(R.color.BackGroundColor)); // drawing backgroung
            Paint PaintPlayer = new Paint(); //Settings for ball of a player
            Paint PaintMainFrame = new Paint();             //settings for form rectangle
            Paint PaintWallGreen = new Paint(); //Settings for green walls
            PaintMainFrame.setColor(Color.GREEN);
            PaintMainFrame.setStyle(Paint.Style.STROKE);
            PaintMainFrame.setStrokeWidth(OnePercentWidth);
            PaintWallGreen.setColor(Color.GREEN);
            PaintWallGreen.setStyle(Paint.Style.FILL);
            PaintPlayer.setColor(Color.WHITE);
            PaintPlayer.setStyle(Paint.Style.FILL);
            frame MainFrame = new frame(0 + OnePercentWidth / 2, 0 + OnePercentWidth / 2, canvas.getWidth() - OnePercentWidth / 2, getHeight() - OnePercentWidth / 2, PaintMainFrame);
            Player player = new Player(OnePercentWidth * 10, canvas.getHeight() - (OnePercentHeight * 8 + OnePercentWidth * 2), OnePercentWidth * 4, PaintPlayer);
            Wall RightWall = new Wall(OnePercentWidth * 40, canvas.getHeight() - OnePercentHeight, OnePercentWidth * 43, OnePercentHeight * 60, PaintWallGreen);
            Log.d("MyDeb", "RightWall.getX1() " + RightWall.getX1() + " RightWall.getY1() " + RightWall.getY1() + " RightWall.getX2() " + RightWall.getX2() + " RightWall.getY2() " + RightWall.getY2());
            canvas.drawRect(RightWall.getX1(), RightWall.getY1(), RightWall.getX2(), RightWall.getY2(), RightWall.getPaint()); // drawing wall
            canvas.drawRect(MainFrame.getX1(), MainFrame.getY1(), MainFrame.getX2(), MainFrame.getY2(), MainFrame.getPaint()); // drawing form
            canvas.drawCircle(player.getX1(), player.getY1(), player.getRadius(), player.getPaint()); // drawing player
            player.setGameisrunning(true);
            update(player);
       System.out.println("OnDraw has worked");
    }
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Сделал как вы сказали, но какая-то ерунда, OnDraw почему-то срабатывает 1 раз. У меня там log выводится один раз. А сообщение из потока 5 раз, как должно быть. Цикл не распространяется на OnDraw
    public class MainActivity extends AppCompatActivity {
        MyDraw draw;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            draw = new MyDraw(this);
            setContentView(draw);
            SomeThing MyThread = new SomeThing();
            MyThread.run();
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        }
    
        class SomeThing            //Мой объект, реализующий интерфейс Runnable
                implements Runnable        //(содержащее метод run())
        {
    
            public void run()     
            {
                for (int i = 5; i > 0; i--) {
    
    
                    try {
    
                       draw.invalidate(); // вызываем 
                        Thread.sleep(1000);
    
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    System.out.println("побочный поток! ");
                }
            }
        }
    }
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    GavriKos, весь день с этой ерундой бьюсь, если получится помочь, буду очень благодарен. Там ветка диалога закончилась
    https://pastebin.com/4rBaY2Sj
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Может вот это:
    2018-11-11 18:58:54.182 3688-3688/com.smerxgames.mygameball A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x128 in tid 3688 (ames.mygameball)


    Вот, нашёл начало падения. Надеюсь поможете разобраться в этих дебрях
    --------- beginning of crash
    2018-11-11 19:18:07.833 4557-4557/com.smerxgames.mygameball A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x128 in tid 4557 (ames.mygameball)
    2018-11-11 19:18:07.833 1536-1557/? I/Timeline: Timeline: App_transition_ready time:22698468
    2018-11-11 19:18:07.833 1536-1557/? I/Timeline: Timeline: App_transition_stopped time:22698468
    2018-11-11 19:18:07.836 1536-1557/? I/ActivityManager: Displayed com.smerxgames.mygameball/.MainActivity: +871ms
    2018-11-11 19:18:07.836 1536-1557/? I/Timeline: Timeline: Activity_windows_visible id: ActivityRecord{e63256b u0 com.smerxgames.mygameball/.MainActivity t1147} time:22698471
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 840704
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 239299583
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 25174048
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 8224
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 4096
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 10848
    2018-11-11 19:18:07.837 2690-2894/? I/WtEventController: AM_Launch: 30009 TAG: 1048576
    2018-11-11 19:18:07.837 1764-1764/? V/PhoneStatusBarPolicy: updateManagedProfile mManagedProfileFocused: false mManagedProfileInQuietMode: false mKeyguardVisible: false mCurrentUserId:0 mCurrentProfileId:0 mSecondSpaceStatusIconVisible: true showIcon:false
    2018-11-11 19:18:07.837 1764-1764/? D/EventBus: [1764, u0] send(AppTransitionFinishedEvent)
    2018-11-11 19:18:07.838 1764-1764/? D/EventBus: [1764, u0]  -> ForcedResizableInfoActivityController [0x673a411, P1] onBusEvent(AppTransitionFinishedEvent)
    2018-11-11 19:18:07.838 1764-1764/? D/EventBus: [1764, u0] onBusEvent(AppTransitionFinishedEvent) duration: 23 microseconds, avg: 456
    2018-11-11 19:18:07.839 1536-1557/? I/WindowManager: Screen frozen for +285ms due to Window{222ecc5 u0 com.smerxgames.mygameball/com.smerxgames.mygameball.MainActivity}
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: Build fingerprint: 'Xiaomi/santoni/santoni:7.1.2/N2G47H/V9.5.10.0.NAMMIFD:user/release-keys'
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: Revision: '0'
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: ABI: 'arm64'
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: pid: 4557, tid: 4557, name: ames.mygameball  >>> com.smerxgames.mygameball <<<
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x128
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG:     x0   0000007f8e21f130  x1   0000007f8e23ccc0  x2   0000000000000070  x3   0000000000000007
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG:     x4   0000000000000000  x5   0000000000000000  x6   0000000072a29b74  x7   0000000000000000
    2018-11-11 19:18:07.919 4585-4585/? A/DEBUG:     x8   0000000000000000  x9   00000000077cc6b0  x10  0000000000000001  x11  0000000000000000
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     x12  0000000000000099  x13  00000000000000f0  x14  000000000000000c  x15  2e8ba2e8ba2e8ba3
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     x16  0000007f8ec2a400  x17  0000007f91662f34  x18  0000007f73d44b40  x19  0000007f7301ab00
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     x20  0000007f7301ab10  x21  0000007f8e21f130  x22  000000007b5f8dbd  x23  0000007f8e23ccc0
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     x24  3ddcdb95d80e8005  x25  3ddcdb95d80e8005  x26  0000007f8e240a98  x27  3ddcdb95d80e8005
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     x28  0000000000000005  x29  0000007fc2efad90  x30  0000007f8ebfc2c8
    2018-11-11 19:18:07.920 4585-4585/? A/DEBUG:     sp   0000007fc2efacc0  pc   0000007f8ebfc2d0  pstate 0000000020000000
    2018-11-11 19:18:07.925 4585-4585/? A/DEBUG: backtrace:
    2018-11-11 19:18:07.925 4585-4585/? A/DEBUG:     #00 pc 00000000000952d0  /system/lib64/libhwui.so
    2018-11-11 19:18:07.926 4585-4585/? A/DEBUG:     #01 pc 00000000000969f8  /system/lib64/libhwui.so (_ZN7android10uirenderer15RecordingCanvas8drawOvalEffffRK7SkPaint+160)
    2018-11-11 19:18:07.926 4585-4585/? A/DEBUG:     #02 pc 0000000000096614  /system/lib64/libhwui.so (_ZN7android10uirenderer15RecordingCanvas10drawCircleEfffRK7SkPaint+152)
    2018-11-11 19:18:07.926 4585-4585/? A/DEBUG:     #03 pc 0000000000106cfc  /system/lib64/libandroid_runtime.so
    2018-11-11 19:18:07.926 4585-4585/? A/DEBUG:     #04 pc 00000000742827f4  /data/dalvik-cache/arm64/system@framework@boot.oat (offset 0x2f5c000)
    2018-11-11 19:18:08.211 1536-4586/? W/ActivityManager:   Force finishing activity com.smerxgames.mygameball/.MainActivity
    2018-11-11 19:18:08.211 2690-2894/? I/WtProcessController: Receive am_crash event for pid: 1536 pkg = com.smerxgames.mygameball
    2018-11-11 19:18:08.211 2690-2894/? W/KloServer: Aborted broadcast does not supprt for: android
    2018-11-11 19:18:08.212 2314-2355/? I/octvm_klo: get event file: /data/tombstones/tombstone_05
    2018-11-11 19:18:08.213 2314-2355/? I/octvm_klo: klo lock
    2018-11-11 19:18:08.213 1536-1548/? I/BootReceiver: Copying /data/tombstones/tombstone_05 to DropBox (SYSTEM_TOMBSTONE)
    2018-11-11 19:18:08.217 1536-4586/? D/ActivityTrigger: ActivityTrigger activityPauseTrigger 
    2018-11-11 19:18:08.222 2314-2355/? I/octvm_klo: summary:[signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x128
    0 miui.os.DropBoxManager.addText:314

    Если даже тут не будет нужного. Загружу .txt
  • Вопрос новичка по графике Android Studio. Как работает canvas?

    SmerxDimas
    @SmerxDimas Автор вопроса
    Так пойдёт?

    2018-11-11 18:58:54.370 3716-3716/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    2018-11-11 18:58:54.370 3716-3716/? A/DEBUG: Build fingerprint: 'Xiaomi/santoni/santoni:7.1.2/N2G47H/V9.5.10.0.NAMMIFD:user/release-keys'
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG: Revision: '0'
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG: ABI: 'arm64'
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG: pid: 3688, tid: 3688, name: ames.mygameball  >>> com.smerxgames.mygameball <<<
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x128
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x0   0000007f8e21f130  x1   0000007f8e23cb80  x2   0000000000000070  x3   0000000000000007
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x4   0000000000000000  x5   0000000000000000  x6   0000000072a29b74  x7   0000000000000000
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x8   0000000000000000  x9   000000000778f6c0  x10  0000000000000001  x11  0000000000000000
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x12  0000000000000099  x13  00000000000000f0  x14  000000000000000c  x15  2e8ba2e8ba2e8ba3
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x16  0000007f8ec2a400  x17  0000007f91662f34  x18  0000007f73d36b40  x19  0000007f7301ab00
    2018-11-11 18:58:54.371 3716-3716/? A/DEBUG:     x20  0000007f7301ab10  x21  0000007f8e21f130  x22  000000007b5f8dbd  x23  0000007f8e23cb80
    2018-11-11 18:58:54.372 3716-3716/? A/DEBUG:     x24  3ddcdb95d80e8005  x25  3ddcdb95d80e8005  x26  0000007f8e240a98  x27  3ddcdb95d80e8005
    2018-11-11 18:58:54.372 3716-3716/? A/DEBUG:     x28  0000000000000005  x29  0000007fc2efad90  x30  0000007f8ebfc2c8
    2018-11-11 18:58:54.372 3716-3716/? A/DEBUG:     sp   0000007fc2efacc0  pc   0000007f8ebfc2d0  pstate 0000000020000000
    2018-11-11 18:58:54.375 1764-1764/? D/VolumeDialog: DISMISS
    2018-11-11 18:58:54.376 1764-1764/? D/expandable_toggle: OnToggleOrderChanged(false) (true) 
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG: backtrace:
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG:     #00 pc 00000000000952d0  /system/lib64/libhwui.so
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG:     #01 pc 00000000000969f8  /system/lib64/libhwui.so (_ZN7android10uirenderer15RecordingCanvas8drawOvalEffffRK7SkPaint+160)
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG:     #02 pc 0000000000096614  /system/lib64/libhwui.so (_ZN7android10uirenderer15RecordingCanvas10drawCircleEfffRK7SkPaint+152)
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG:     #03 pc 0000000000106cfc  /system/lib64/libandroid_runtime.so
    2018-11-11 18:58:54.378 3716-3716/? A/DEBUG:     #04 pc 00000000742827f4  /data/dalvik-cache/arm64/system@framework@boot.oat (offset 0x2f5c000)