Category Archives: Android

[Android] Android Calculator Series – Division by Zero Crash Issue Resolved

Android Calculator Series – Division by Zero Crash Issue Resolved

Affected Versions

The following versions were affected by the division by zero crash issue:

Travel Calculator – V1.8.5
CyCalc – V1.3.11
TW Exchange Calc – V1.0.8
To check your current version, open the app’s menu and go to the “About” dialog, where the version number is displayed.

Solution

The issue has been fixed by blocking any division by zero operation. The value will now remain as 0.

After considering various options, we opted for the simplest solution to avoid introducing any new complications.

Updated Versions

The updated versions with the fix are:

Travel Calculator – V1.8.6
CyCalc – V1.3.12
TW Exchange Calc – V1.0.9
Once you update to these versions, the division by zero crash will no longer occur.

Currently, Travel Calculator has been rolled out in 100% progress. All users can update to V1.8.6 by now.

The other apps have already been fully released, so if you have automatic updates enabled, you should already have the latest version.

Future Updates

Moving forward, Android updates will be scheduled twice a year, around January and July, coinciding with winter and summer breaks.

There won’t be any major changes—just minor bug fixes and updates to the latest Google SDKs before releasing them.

If similar issues arise due to updates from Google, we’ll handle them in a similar manner—quickly identifying the problem and releasing a fix.

Thank you for your continued support. As long as I’m around, these apps will stay up-to-date with Google’s SDK, making currency conversion during travel less of a hassle.

Wishing you safe and enjoyable travels!

[Android] Calculator type app will encounter divide by 0 error

Incident

In this update, we introduced a new solution to resolve the decimal point issue.

This solution allows all calculations to be handled in decimal, ensuring precise representation of decimal points.

However, the previous safeguard that prevented the app from crashing when dividing by zero no longer works.

So, for the Android calculator series, if you press any number, then the division sign, and then 0—bingo! The app will immediately shut down.

Planned Fix

We have identified the problematic code and have already fixed it.

Even if someone tries to intentionally cause a crash by dividing by zero, the app will no longer crash. However, we are still deciding how to handle the display part.

In mathematics, dividing by zero results in infinity, or it’s considered undefined.

The usual approach is to display “NaN,” meaning “Not a Number,” but that might be confusing for users. Currently, we are considering keeping the value as 0, though this would not align with the mathematical principle.

One possible approach is to display a short message informing the user that division by zero does not produce a valid result. However, this would require modifying more code, which could affect other parts of the app. Therefore, we might hold off on this update for now.

Expected Update Schedule

The code has been fixed, but before releasing the new version, we’ll collect error reports for a day or two to ensure there are no other issues. Once resolved, we’ll push out an update.

Tentatively, we plan to release the new version on August 18, 2024. Until then, please be careful not to use division by zero in the Travel Calculator, as it will cause the app to immediately crash—vanish without a trace.

This Is My Fault

So, if you want to blame someone, blame me.

I won’t hide from this responsibility.

Just please be gentle with the criticism.

[Android] The Travel Calculator V1.8.5 Crash Issue on Android 14 Has Been Fixed

Cause

Due to the latest policy requirements from Google, we needed to release an updated version.

The app itself didn’t undergo significant changes; we simply recompiled it using the latest version of Google’s Android libraries and updated the version number.

But, as we all know, the most important part of life is that “But.” This time, Google’s own library caused the issue.

In a place where our code shouldn’t have been blocked, an unexpected event was triggered that terminated the normal code execution.

This issue only occurs on Android 14 (Tiramisu) and above. Versions below Android 13 are not affected.

Solution

After identifying the issue, we simply removed the problematic code.

If we were to follow the proper solution, we would need to raise the minimum supported version to SDK Level 33, which is Android 13. However, that would render many users’ phones, including mine, incompatible.

So, between two undesirable options, we chose the lesser evil and removed the problematic code. This won’t impact the overall functionality.

New Version

The new version, which has been fixed, is already available. The version name remains V1.8.5, but it’s now based on a version that doesn’t have this issue.

So, if you’ve encountered a crash right after opening the app, please update again, and the issue should be resolved.

Although we’ve been “once again” let down by Google, it’s still our app’s issue, and we sincerely apologize to everyone. (Why did I say “again”?)

A Few Thoughts

In my opinion, there’s no need to make significant changes to a stable app, especially one that needs to be consistently reliable, like this one that’s often used while traveling. Any bugs introduced by changes can lead to disaster.

I’ve always believed in the philosophy of the Tatung rice cooker: as long as it can cook rice, it’s a good rice cooker.

But our great Google seems to feel uneasy unless they give developers something to do. Every now and then, they introduce policy changes, and we have to upgrade our API Level accordingly, or else we’ll be blocked from future updates.

This forces us to update every so often. If Google’s own software hasn’t been rigorously tested, issues like this can arise.

Users don’t know whose fault it is, so they just blame the app developers.

And we can only accept that.

That’s why I can never sleep well the night after releasing an update, fearing a flood of crash reports, only to find out that, once again, it’s Google’s fault.

Thank you for your understanding. The new version is up, and we wish you a pleasant trip!

[Android] Currency Calc V1.3.7 Crash Problem

Currency Calc has just been updated to version 1.3.7. However, after this update, some users encountered fatal problem when launching the app. The app will crash immediately.

After studying the logs from crash, this problem was led by an update of third party library to parse json data. This latest version library will fail to load when running on Android version lower than 8.0 (API level 26). Android version larger than 8.0 will not have this crashing problem.

Now that root cause of this problem has been identified, I just built another version of V1.3.7 and publish it to Google Play Store. After the publishing work by Google Play, you may download and upgrade to stable version of Currency Calc.

I feel deep sorry about this update and apologize for any inconvenience that may cause.

Next time the third party library update will be further considered more carefully to prevent such case happened again.

Thanks for your support and patience. Any other problems/questions, please drop me a mail: ericlin@tomosware.com .

[Android] TravelCalc apk download for versions

Travel Calculator is a great tool to do currency checking/calculating jobs.  From the server logs, we believe that it has become important tool for some people’s daily work.

As a result, trying to maintain stability of Travel Calculator is our first priority. However, we’re simply human beings, not immortals with great power to make the App flawless. When a new version being pushed to Play Store, we always keep our eyes on the bug report and install status. But still failed to have all versions working well on all devices.

Then, some of our users has sent us messages. They want to get older versions back to their devices since newer one simple doesn’t work on phone/tablet.

To fulfill these requests, we’ve made a page with download links to older versions of TravelCalc. From version V1.3.3 to current developing one. Here is the link to this page:

https://www.tomosware.com/apk/en_apk.html

If you just need older versions which worked well on your device, you may try to find them from the above page.

Wish you have all the best journeys!