Project

General

Profile

Download (4.2 KB) Statistics
| Branch: | Revision:

examples / src / main / java / org / distorted / examples / rubik / RubikActivity.java @ 431929cf

1
///////////////////////////////////////////////////////////////////////////////////////////////////
2
// Copyright 2019 Leszek Koltunski                                                               //
3
//                                                                                               //
4
// This file is part of Distorted.                                                               //
5
//                                                                                               //
6
// Distorted is free software: you can redistribute it and/or modify                             //
7
// it under the terms of the GNU General Public License as published by                          //
8
// the Free Software Foundation, either version 2 of the License, or                             //
9
// (at your option) any later version.                                                           //
10
//                                                                                               //
11
// Distorted is distributed in the hope that it will be useful,                                  //
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of                                //
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                                 //
14
// GNU General Public License for more details.                                                  //
15
//                                                                                               //
16
// You should have received a copy of the GNU General Public License                             //
17
// along with Distorted.  If not, see <http://www.gnu.org/licenses/>.                            //
18
///////////////////////////////////////////////////////////////////////////////////////////////////
19

    
20
package org.distorted.examples.rubik;
21

    
22
import android.app.Activity;
23
import android.app.ActivityManager;
24
import android.opengl.GLSurfaceView;
25
import android.os.Bundle;
26
import android.widget.TextView;
27

    
28
import org.distorted.examples.R;
29
import org.distorted.library.main.DistortedLibrary;
30

    
31
///////////////////////////////////////////////////////////////////////////////////////////////////
32

    
33
public class RubikActivity extends Activity
34
{
35
    private TextView mText;
36

    
37
///////////////////////////////////////////////////////////////////////////////////////////////////
38

    
39
    @Override
40
    protected void onCreate(Bundle icicle)
41
      {
42
      super.onCreate(icicle);
43
      DistortedLibrary.onCreate();
44
      setContentView(R.layout.rubiklayout);
45

    
46
      mText = findViewById(R.id.rubikText);
47
      setText(1);
48
      }
49

    
50
///////////////////////////////////////////////////////////////////////////////////////////////////
51
    
52
    @Override
53
    protected void onPause() 
54
      {
55
      super.onPause();
56
      GLSurfaceView view = findViewById(R.id.rubikSurfaceView);
57
      view.onPause();
58
      DistortedLibrary.onPause();
59
      }
60

    
61
///////////////////////////////////////////////////////////////////////////////////////////////////
62
    
63
    @Override
64
    protected void onResume() 
65
      {
66
      super.onResume();
67
      GLSurfaceView view = findViewById(R.id.rubikSurfaceView);
68
      view.onResume();
69
      }
70
    
71
///////////////////////////////////////////////////////////////////////////////////////////////////
72
    
73
    @Override
74
    protected void onDestroy() 
75
      {
76
      DistortedLibrary.onDestroy();
77
      super.onDestroy();
78
      }
79

    
80
///////////////////////////////////////////////////////////////////////////////////////////////////
81

    
82
    void setText(final int numCube)
83
      {
84
      long availMemory = returnAvailableMemory();
85
      final int availMemoryInMB = (int)(availMemory/1000000);
86

    
87
      runOnUiThread(new Runnable()
88
        {
89
        public void run()
90
          {
91
          mText.setText(getString(R.string.rubik_placeholder, numCube, availMemoryInMB));
92
          }
93
        });
94
      }
95

    
96
///////////////////////////////////////////////////////////////////////////////////////////////////
97

    
98
   private long returnAvailableMemory()
99
     {
100
     ActivityManager activityManager = (ActivityManager)getSystemService(ACTIVITY_SERVICE);
101
     ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
102
     activityManager.getMemoryInfo(memoryInfo);
103

    
104
     return memoryInfo.availMem;
105
     }
106
}
(1-1/4)