Hi,
I don't understand what you're doing.
The line:
$app->setUserState(HIKASHOP_COMPONENT.'.shipping_id', $this->addressExist($user_id, $address_type));
will set the value of $this->addressExist($user_id, $address_type) as id of the selected shipping method, and not as id of the selected shipping address.
So if you want to set the selected shipping address, you should replace the "shipping_id" in that code by "shipping_address".
In fact, you already use "shipping_address" to get the shipping address in the onAfterCheckoutStep function in your code, so I don't know if you made a mistake in your code or in what you wrote here.
In HikaShop 2.6.x the checkout takes the data of the cart/checkout and save it in an order in the function "after_confirm" of the file components/com_hikashop/controllers/checkout.php
In your plugin, you can actually use the trigger onBeforeOrderCreate to have access to the $order object just before it is being saved in the database and thus you can change the order_shipping_address_id if you want on the fly at that point.