我想计算以下数字:
CellularServiceChangeRate
表示用户连接的蜂窝服务在一段时间内发生变化的频率。
我在android.telephony
API中找到一个好的事件时遇到了一些麻烦,这可以让我确定是否:
lastAntenna != currentAntenna.
您对如何确定这一点有什么建议吗?
答案 0 :(得分:0)
您可以设置一个用于连接更改的侦听器,并将最后一个已知的单元网络保存在sharedPreferences中或将其保存到本地数据库
<receiver android="YourNetworkListener">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
使用
检查以前的连接 SharedPreferences sharedPref = getSharedPreferences("name",MODE_PRIVATE);
String connection = sharedPref.getString("phone_connection", null);
将它与当前连接进行比较,然后对变量进行数学运算,然后
保存
SharedPreferences sharedPref = getSharedPreferences("name",MODE_PRIVATE);
SharedPreferences.Editor prefEditor = sharedPref.edit();
prefEditor.putString("phone_connection", How Ever You want to identify the networks);
prefEditor.commit();