Author: xcesco

Abubusoft Blog

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

Log SQL operations with Kripton Persistence Library

As I have already said in other posts, StackOverflow is a good place where find interesting ideas for writing a post. Some days ago I found the following post: Android Room Database DAO debug log The question was: is there a way to log SQL queries with Room library? The answer was no. And with…
Read more

Kripton Persistence – v.6.0.0

Bug Just some hours ago, Kripton Persistence Library v.6.0.0. You can check the source code on github/xcesco/kripton, as usual.The release notes: [KRIPTON-294] – parentEntity does not work with id with alias [KRIPTON-301] – Sometimes java.lang.IllegalStateException: attempt to re-open an already-closed object #14 [KRIPTON-302] – Rename DateMillisecondsTypeAdapter in DateTime2LongTypeAdapter and DateMillisecondsTypeAdapter into Date2LongTypeAdapter #13 [KRIPTON-303] – Table alias…
Read more

A new beginning

Some years ago I started to write into this site. With version 6 of Kripton Persistence Library I decided to give a refresh to this site. In the next day, I will reinsert old contents. Stay tuned!