Android Barcode Detection from Fast Moving Objects

Assume you apply barcode technology to the logistics conveyor belt for scanning parcels. A problem you may face is how to recognize barcodes from blurred images. Although we can use advanced algorithms to deal with this complicated case, we’d better improve the image quality as possible as we can. A simple way is to adjust the camera shutter speed which is also known as exposure time. Faster shutter speed can avoid motion blur. In this post, I will share how to invoke Android Camera2 APIs to change the shutter speed, as well as how to build a simple Android barcode reader to decode barcodes from fast-moving objects

Read more

Android Camera Preview App: Camera vs. Camera2

Building Android camera apps is much more complicated than building iOS camera apps due to the different vendors and hardware specs. Since from API level 21, the old Camera class was deprecated and a brand-new Camera2 class was born. In this post, I want to use the least code to create Android camera preview apps with Camera and Camera2 respectively and compare the usage difference between the two sets of APIs.

Read more

Binding Android Library for Xamarin is A Disaster

.NET developers like Xamarin because they can develop Android and iOS apps in C#. However, if you are not afraid of learning new programming languages, you’d better choose Kotlin for Android and Swift for iOS. Unlike React Native, Flutter and Cordova, with Xamarin, you cannot create one codebase for both platforms in Visual Studio. Moreover, when you try to bind a complicated and obfuscated Android library, you may be in big trouble.  I just suffered from the pain of binding Dynamsoft Camera SDK for Android.

Read more

How to Host Maven Repository for Android AAR File on IIS

If you have a .jar or a .aar file for distribution, you can publish it to Maven central or jcenter. But the premise is your package has to be open source. If you want to distribute a commercial library, you’d better host a Maven repository yourself. Inspired by STEFFENWELLNER’s article, I have successfully set up a Maven repository on IIS. The post includes how to create an AAR project, how to configure IIS and URL, as well as how to create a testing project.

Read more

Mixing Kotlin and Java to Build Android Barcode Reader

Last week I made a warm up for Kotlin, getting started to learn tutorials and reference. Now it is time to take the next step. Since Kotlin is hundred percent compatible with Java, we can use both programming languages without barriers in one project. In this article, I want to share how to build an Android barcode reader using Kotlin code and Java code.

Read more

React Native Bridging Modules for Android from Scratch on Windows

When using React Native to write mobile apps, JavaScript is the primary programming language. However, sometimes, you may want to call a platform API that not supported by existing React Native component or use a third-party Android library that built as an AAR file. For these cases, you need to write native code for bridging using Android Studio and Xcode. In this article, I will demonstrate how to create a simplest React Native Bridge module step by step.

Read more

Cordova Plugin with Android AAR File for Barcode

Cordova is a mobile application development framework that enables developers to build Android, iOS and Windows Phone apps using HTML5, JavaScript, and CSS3. It uses web views to render UI elements instead of the platform’s native UI framework. Cordova can be extended to add more functionalities with plugins. There are many learning resources of Cordova plugin on GitHub. In this article, I want to share how to make a Cordova barcode plugin with a third-party Android library, an AAR file, step by step.

Read more