Ну вот мне тоже самое пришло в голову, но ощущение, что это костыль
Это ограничение бриджа, у всех так. У тех, у кого это не так, просто этот же костыль на уровне фреймворка реализован. На самом деле, к примеру (может быть устаревшая инфа, но ещё в 0.49 так было), бридж даже коллбэки JS'ные не может в натив передать, он их так же сохраняет в JS, а в натив сгенерированный id'шник передает...