public class ListenerService extends WearableListenerService {
    //Remember to decler it as well in Manifest.xml
    private static final String TAG = ListenerService.class.getSimpleName();
    
    @Override
    public void onDataChanged(DataEventBuffer dataEvents) {
        Log.d(TAG, "onDataChanged");
        final List<DataEvent> events = FreezableUtils.freezeIterable(dataEvents);
        dataEvents.close();
        for (DataEvent event : events) {
            Uri uri = event.getDataItem().getUri();
            String path = uri.getPath();
            if ("/ourAppDatabase".equals(path)) {
                DataMapItem item = DataMapItem.fromDataItem(event.getDataItem());
                byte[] realmAsset = item.getDataMap().getByteArray("realmDatabase");
                if(realmAsset != null){
                    toFile(realmAsset);
                    //I recommend here calling a Broadcast - getBaseContext().sendBroadcast(new Intent(yourbroadcast here));
                }
            }
        }
    }

    private void toFile(byte [] byteArray){
        File writableFolder = ListenerService.this.getFilesDir();
        File realmFile = new File(writableFolder, Realm.DEFAULT_REALM_NAME);
        if (realmFile.exists()) {
            realmFile.delete();
        }
        try {
            FileOutputStream fos=new FileOutputStream(realmFile.getPath());
            fos.write(byteArray);
            fos.close();
        }
        catch (java.io.IOException e) {
            Log.d(TAG, "toFile exception: " + e.getLocalizedMessage());
        }
    }
}