Home Artists Posts Import Register

Downloads

Content

Here's another release of CellReader, with a whole bunch of changes.

First up, I managed to get emulator tests working better, so I was able to fix a whole bunch of crashes on Android 9, 10, and 11. If you still run into crashes, let me know.

There are also some layout changes. The list of connections should scroll underneath the status bar now, which doesn't do much, but it does look cool. I also added an expandable bottom bar with some links to my website and such, along with the $5 supporters list and some basic version info. Just tap the arrow at the bottom to see the options.

On top of the basic layout changes, the way information is displayed should be a little prettier. It's still hard to show so much at once, but more information is formatted, and some names are shortened to take up less space. Some padding is also removed so more items can show on-screen at once.

Finally for the layout stuff, the animations have been tweaked to hopefully be a little less intrusive, and animation performance should be better.

Direct access to band information wasn't actually available in Android until Android 11, which meant that devices running 9 and 10 just didn't get any band information. Even on Android 11 and 12, band information is only available for LTE and 5G. For GSM, WCDMA, and TDSCDMA, Android doesn't report band information directly. 

To get around that, I've implemented an ARFCN table. For LTE, the EARFCN of a connection can be uniquely paired with a specific band, so on Android 9 and 10 you should get the same info as on Android 11 and 12.

For the other technologies, it's possible for an ARFCN value to correspond to multiple bands. CellReader will report all potential bands for these connections. This means that Android 10's 5G band info might not be as accurate as it is on Android 11 and 12.

CellReader also uses the ARFCN table to infer exact upload and download frequencies for each connection. Unfortunately, CDMA doesn't have any band or frequency inference, since that technology doesn't use ARFCN.

And a note about the ARFCN inference: if you know how this stuff works, I'd really appreciate a review of the code. I'm sure I've messed up one of the frequencies or ARFCN range values. If you notice something wrong, post a pull request on GitHub. https://github.com/zacharee/CellReader/blob/master/app/src/main/java/dev/zwander/cellreader/utils/ARFCNTools.kt.

Finally, the code has been cleaned up and organized a bit, and the indent arrows should look and perform a little better.

Comments

No comments found for this post.