Author: xcesco

Abubusoft Blog

Develop locally, test on web

Ngrok exposes local servers behind NATs and firewalls to the public internet over secure tunnels. It’s a very useful tool, when you are developing on your PC and you need to expose your service on the web. It works on http and https. Official site

Kripton release 7

It was quite a long time ago when I start to develop this release. The features were introduced: Core module Add support for java.time classes introduced with Java 8: now it is possible to persist field of type LocalDateTime, LocalDate etc, without define any custom TypeAdapter. Some bug fixing Orm module Add support for java.time…
Read more

Maven: how to put in a Java source the project version defined in pom.xml

Recently I decided to insert a message during Kripton Persistence Library initialization at run-time which display library version. To accomplish this task I need to include in the source code the maven project version contained in pom.xml. Is there a plugin for maven that can help me? The answer is YES! It’s templating-maven-plugin. So, I…
Read more

Webview or Chrome custom tabs?

During my app development on the Android platform, I always used the WebView component. I notice it is a slow component, but it does what it must do. Today I found some useful link about another widget to include web content in my Android app: the Chrome custom tab. I’ve already heard about it, but…
Read more

Just some useful links about certificate pinning on Android

For my job, I was looking for some good article about certificate pinning on Android devices. I found these: https://medium.com/@appmattus/android-security-ssl-pinning-1db8acb6621e https://www.netguru.com/codestories/3-ways-how-to-implement-certificate-pinning-on-android If you don’t know what it is Certificate Pinning: Pinning is the process of associating a host with their expected X509 certificate or public key. Once a certificate or public key is known or seen for a host, the certificate or…
Read more

CrystaX: a valid alternative to NDK?

The NDK was the only way that I know to integrate, in Android development, Java and C worlds. Some day ago I found a possible replacemente of NDK: Crystax It seems to have many features that standard NDK does not have. The more important for me: Full support of C locales Full math support, including…
Read more

Kripton ORM: how to store a HashSet in a column

Kripton ORM is the Kripton’s module to manage SQLite database. Store a HashSet in a column is quite easy. Let’s suppose we have a Java model mapped to the SQLite database in the following way: The associated DAO interface: And the database definition: Store a HashSet is simple as define it in the SchoolLunch. Kripton…
Read more

Kripton ORM: reusable generic base DAO interface

This post was inspired by the following question from StackOverflow: Reusable generic base class DAOs with Android Room. I reuse the original question and I try to approach the problem with Kripton. Room’s approach avoids using an ancestor interface for DAO interface to define for the SELECT operations. A parent DAO interface can be used only to define operationINSERT/UPDATE/DELETE but…
Read more

Kripton and SQLite: generate an SQLite based content provider

One of the key features of Kripton ORM is the capability to generate an SQLite content provider starting from a data source definition. More information about Content Provider can found here. Suppose we have in our application a music data source so defined: In this data source, there are Artist and Album entities. Every entity got its DAO interface.…
Read more

Kripton ORM: how to store byte arrays

Stackoverflow is always a good place to get ideas to write posts. Today I answer to this question. The original question is about using Room Library. But I want to change the question: how can I persist a byte array using Kripton ORM Library? With kripton, you can easily manage byte[] fields. Just to show…
Read more