In practice, the application can unpack files and folder from assets/ on the first run. But the user must run the application at least once.
OTOH, you may try to create an application that starts when the user attaches the USB cable -- there should be notifications about such events.
Something like:
<intent-filter>
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
</intent-filter>