Two possible ways to do disconnection without JNI:
In the access point setting there is a setting for the idle time setting. The user can be asked to set small time interval according to his requirement and the connection will be dropped when connection is idle and there is no activity. When the application wants to connect again it will be prompted automatically to establish connection again.
Another way is to ask the user to disconnect the data call. When the disconnection must be done a dialog box which ask to cancel the Internet connetion can be showed to the user.