Skip to content

Commit d78b05e

Browse files
committed
add service for get cpu usage info
1 parent 756b1e9 commit d78b05e

25 files changed

+351
-143
lines changed

app/src/main/AndroidManifest.xml

+3
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@
2121
<category android:name="android.intent.category.LAUNCHER" />
2222
</intent-filter>
2323
</activity>
24+
25+
<service android:name="com.fadisu.cpurun.service.CpuMsgService"></service>
26+
2427
</application>
2528

2629
</manifest>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package com.fadisu.cpurun.service;
2+
3+
import java.util.List;
4+
5+
interface ICpuMsgCallBack {
6+
void updateCpuUsage(in List<String> msg);
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.fadisu.cpurun.service;
2+
3+
import com.fadisu.cpurun.service.ICpuMsgCallBack;
4+
import java.util.List;
5+
6+
interface ICpuMsgService {
7+
8+
void registerCallback(ICpuMsgCallBack cb);
9+
10+
void unregisterCallback(ICpuMsgCallBack cb);
11+
12+
void updateCpuUsage(in List<String> msg);
13+
}
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,28 @@
11
package com.fadisu.cpurun;
22

33
import android.app.Application;
4+
import android.content.Context;
5+
import android.content.Intent;
6+
7+
import com.fadisu.cpurun.service.CpuMsgService;
48

59
public class MyApplication extends Application {
610

711
@Override
812
public void onCreate() {
913
super.onCreate();
14+
startService(this);
15+
}
16+
17+
public static void startService(Context mContext) {
18+
Intent intent = new Intent(mContext, CpuMsgService.class);
19+
intent.setAction(CpuMsgService.ACTION_CPU_USAGE_START);
20+
mContext.startService(intent);
21+
}
22+
23+
public static void stopService(Context mContext) {
24+
Intent intent = new Intent(mContext, CpuMsgService.class);
25+
intent.setAction(CpuMsgService.ACTION_CPU_USAGE_END);
26+
mContext.startService(intent);
1027
}
1128
}

app/src/main/java/com/fadisu/cpurun/activity/MainActivity.java

+7-4
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88
import android.view.View;
99
import android.widget.RadioButton;
1010

11+
import com.fadisu.cpurun.MyApplication;
1112
import com.fadisu.cpurun.R;
12-
import com.fadisu.cpurun.fragment.CoreInfoFragment;
1313
import com.fadisu.cpurun.fragment.BuildFragment;
14+
import com.fadisu.cpurun.fragment.CoreInfoFragment;
1415
import com.fadisu.cpurun.fragment.CpuInfoFragment;
1516
import com.fadisu.cpurun.fragment.CpuRunTimeFragment;
1617
import com.fadisu.cpurun.fragment.CpuSceneFragment;
@@ -58,7 +59,6 @@ public class MainActivity extends FragmentActivity implements View.OnClickListen
5859
private RadioButton mCpuVoltageRb;
5960
private RadioButton mTemperatureRb;
6061

61-
6262
@Override
6363
protected void onCreate(Bundle savedInstanceState) {
6464
super.onCreate(savedInstanceState);
@@ -67,11 +67,14 @@ protected void onCreate(Bundle savedInstanceState) {
6767
initViews();
6868
initValues();
6969
initLisener();
70+
71+
MyApplication.startService(this);
7072
}
7173

7274
@Override
7375
public void onBackPressed() {
7476
super.onBackPressed();
77+
MyApplication.stopService(this);
7578
finish();
7679
}
7780

@@ -128,10 +131,9 @@ private void initLisener() {
128131
mTemperatureRb.setOnClickListener(this);
129132
}
130133

131-
132134
/**
133135
* 设置显示的页面
134-
* <p/>
136+
* <p>
135137
* fragment传入点击的按钮对应的Fragment对象
136138
* bundle参数
137139
* tag标识符
@@ -194,4 +196,5 @@ public void onClick(View view) {
194196
break;
195197
}
196198
}
199+
197200
}

app/src/main/java/com/fadisu/cpurun/adapter/CustomAdapter.java

+12-12
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
package com.fadisu.cpurun.adapter;
22

3-
import java.util.ArrayList;
4-
import java.util.Arrays;
5-
import java.util.List;
6-
73
import android.view.View;
84
import android.view.ViewGroup;
95
import android.widget.BaseAdapter;
106

7+
import java.util.ArrayList;
8+
import java.util.Arrays;
9+
import java.util.List;
10+
1111
public class CustomAdapter<T> extends BaseAdapter {
1212

1313
public final int SELECT_NULL = -1;
@@ -29,10 +29,6 @@ public CustomAdapter(T[] objects) {
2929
}
3030
}
3131

32-
public interface LayoutView {
33-
public <T> View setView(int position, View convertView, ViewGroup parent);
34-
}
35-
3632
public void setLayoutView(LayoutView layoutView) {
3733
mLayoutView = layoutView;
3834
}
@@ -41,15 +37,15 @@ public List<T> getAdapterData() {
4137
return mObjects;
4238
}
4339

40+
public int getSelectPosition() {
41+
return selectPosition;
42+
}
43+
4444
public void setSelectPosition(int position) {
4545
selectPosition = position;
4646
notifyDataSetChanged();
4747
}
4848

49-
public int getSelectPosition() {
50-
return selectPosition;
51-
}
52-
5349
public void updateData(ArrayList<T> objects) {
5450
selectPosition = SELECT_NULL;
5551

@@ -96,4 +92,8 @@ public View getView(int position, View convertView, ViewGroup parent) {
9692
}
9793
}
9894

95+
public interface LayoutView {
96+
public <T> View setView(int position, View convertView, ViewGroup parent);
97+
}
98+
9999
}

app/src/main/java/com/fadisu/cpurun/fragment/BuildFragment.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -76,10 +76,6 @@ private void initListeners() {
7676
mCustomAdapter.setLayoutView(this);
7777
}
7878

79-
class ViewHolder {
80-
TextView tv_info;
81-
}
82-
8379
@Override
8480
public <T> View setView(int position, View convertView, ViewGroup parent) {
8581
ViewHolder holder = null;
@@ -97,4 +93,8 @@ public <T> View setView(int position, View convertView, ViewGroup parent) {
9793

9894
return convertView;
9995
}
96+
97+
class ViewHolder {
98+
TextView tv_info;
99+
}
100100
}

app/src/main/java/com/fadisu/cpurun/fragment/CoreInfoFragment.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,6 @@ private void initListeners() {
9191
mCustomAdapter.setLayoutView(this);
9292
}
9393

94-
class ViewHolder {
95-
TextView tv_info;
96-
}
97-
9894
@Override
9995
public <T> View setView(int position, View convertView, ViewGroup parent) {
10096
ViewHolder holder = null;
@@ -112,4 +108,8 @@ public <T> View setView(int position, View convertView, ViewGroup parent) {
112108

113109
return convertView;
114110
}
111+
112+
class ViewHolder {
113+
TextView tv_info;
114+
}
115115
}

app/src/main/java/com/fadisu/cpurun/fragment/CpuInfoFragment.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,6 @@ private void initListeners() {
7474
mCustomAdapter.setLayoutView(this);
7575
}
7676

77-
class ViewHolder {
78-
TextView tv_info;
79-
}
80-
8177
@Override
8278
public <T> View setView(int position, View convertView, ViewGroup parent) {
8379
ViewHolder holder = null;
@@ -95,4 +91,8 @@ public <T> View setView(int position, View convertView, ViewGroup parent) {
9591

9692
return convertView;
9793
}
94+
95+
class ViewHolder {
96+
TextView tv_info;
97+
}
9898
}

app/src/main/java/com/fadisu/cpurun/fragment/CpuRunTimeFragment.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,6 @@ private void initListeners() {
7474
mCustomAdapter.setLayoutView(this);
7575
}
7676

77-
class ViewHolder {
78-
TextView tv_info;
79-
}
80-
8177
@Override
8278
public <T> View setView(int position, View convertView, ViewGroup parent) {
8379
ViewHolder holder = null;
@@ -95,4 +91,8 @@ public <T> View setView(int position, View convertView, ViewGroup parent) {
9591

9692
return convertView;
9793
}
94+
95+
class ViewHolder {
96+
TextView tv_info;
97+
}
9898
}

app/src/main/java/com/fadisu/cpurun/fragment/CpuSceneFragment.java

+4-5
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
import com.fadisu.cpurun.R;
1515
import com.fadisu.cpurun.adapter.CustomAdapter;
1616
import com.fadisu.cpurun.util.CpuUtils;
17-
import com.fadisu.cpurun.util.ProcCpuStatUtil;
1817

1918
import java.util.ArrayList;
2019
import java.util.List;
@@ -75,10 +74,6 @@ private void initListeners() {
7574
mCustomAdapter.setLayoutView(this);
7675
}
7776

78-
class ViewHolder {
79-
TextView tv_info;
80-
}
81-
8277
@Override
8378
public <T> View setView(int position, View convertView, ViewGroup parent) {
8479
ViewHolder holder = null;
@@ -96,4 +91,8 @@ public <T> View setView(int position, View convertView, ViewGroup parent) {
9691

9792
return convertView;
9893
}
94+
95+
class ViewHolder {
96+
TextView tv_info;
97+
}
9998
}

0 commit comments

Comments
 (0)