After some efforts on code change, the crash problem of TravelCalc V1.1 on iPad has been resolved. Apple has approved the submission of patched version to app store in short time (Thanks to Apple reviewers). Now users can download this version to fix the problem.
The root cause of this problem is code fragments added for support to “Dark Mode”. To control the change of “Dark Mode” and “Light Mode” colors, I have to find some place in application initialization to insert related control flows.
However, when iPad executed these code fragments, something just went wrong in initialization process. A component of calculator will encounter problems and fail to pass the initialization.
After this patch, the problem has been fixed. I just suggest all iPad users to upgrade to this version, V1.1.1. iPhone users could use V1.1 as well, but still recommend to upgrade to use V1.1.1.
Meanwhile, V1.1.1 also added two new options to control TAX/TIP cyclic calculation and tax refund calculation formula. Users could get more flexibility for TAX/TIP calculation with version 1.1.1.
Sorry again for any inconvenience that may cause of V1.1 update. I’ll take more care on code fragments change with future updates.
Still during this world-wide pandemic, may the HEALTH be with you. Keep healthy until we could travel around the world again!
The iOS TravelCalc has had an update with version V1.1 recently. I’ll prepare another article to describe the details about this update. Today I’d like to focus on the crash problem of this version on iPad in landscape mode.
From the analysis data been received by now, there has been over 20 users affected by this issue. The symptom is crash after launch of TravelCalc on iPad under landscape mode. This issue will affect all iPads with iOS 13.0 and up.
The root cause of this issue is some code fragments changed for supporting “Dark Mode” after iOS 13. When use change the appearance mode, TravelCalc should change its own display mode and set the correct color code to each related component. To accomplish this, some new code fragments should be added to a rarely used event location. Under landscape mode of iPad, this action will make a component in TravelCalc disappear and appear again after the change of appearance mode . During this period any attempt to co-work with this component will lead to CRASH.
How to resolve it?
To solve this issue, an updated version of TravelCalc with version number V1.1.1 will be submitted to Apple for review. Once approved, users will be able to update to this version and cease this problem. The planned schedule for this patch will be within this week, before 6/20, 2020.
There is a workaround of this issue before the patched version. You may set iPad in “Portrait Mode” before launching TravelCalc. The App will lock the direction of screen into Portrait Mode after successful launch.
Sorry for any inconvenience that may cause to iPad users. The patch is on the way. I’ll send it to Apple for review once the package is ready.
May peace and all blessings be with you during this worldwide pandemic.
CryptoJS is a popular encrypt/decrypt library used by JS community. However, the latest version 4.x.x just can’t be used on react-native. It will need native crypto library as base. Since react-native doesn’t have the native crypto library supported by now, it’s not so easy to get it working on react native platform.
For my project on-going, I need the AES encrypt/decrypt part to work on react native. It will be very useful if CryptoJS could work on it.
While searching the solution to this problem, react-native-crypto-js library has jumped into my sight. From the github repo shown, this library just packaged the crypto-js v3.1.2 from source and register it into npm registry. After some testing, I found it can’t decrypt my encrypted source correctly. The final decrypted result will always stop at some ending point before the real end. Around 10-20 bytes are cut out after decryption.
Then I try to go back to crypto-js github to see the version tag. Fortunately, there still exists version 3.1.x and be registered in npm. For now it’s version 3.1.8. Version 4.x have breaking changes and version 3.x still keep the original source level dependency for encryption/decryption.
As a result, I then tried to install version 3.1.8 to react-native project. And it really worked. The original crypto-js code can work perfectly on react-native project. No more native crypto library dependency required.
If you have the same problems on react-native crypto-js support, try to install version 3.1.x to your project. Simple encryption/decryption will be ready to work.
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: firstname.lastname@example.org .
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:
After some days waiting, the iOS version of Travel Calculator is now available to download on App Store.
This App can help a lot while performing overseas travel. Especially when you need to exchange foreign currencies you will find it be very useful.
OFF percent button with customized percentage gives you one touch to get discounted price/values. TAX/TIP button will release your valuable time while traveling.
And, the most important of all, you can customize your own currency rates. You may encounter such condition. You just exchange some foreign currencies with some specific rate. But the rate is changing everyday. When you press update button, you don’t want to change the target currency rate to the up-to-date one. In the opposite, you just want to keep it and lock it down. With Travel Calc, you can do this easily.
Click settings and select “My Rates”. Input your own rates and click on “Lock this Rate”. No more update will be applied to your rates. You can then take this rate to the target country and get real expenses in your own currency.
Hope this App could help a lot of people for the currency exchange works.
Travel should be wonderful and happy. As to currency, TravelCalc just makes it easy!