Everything on your list is doable in pythonista. Widgets are also supported, though there are limitations on memory that limit somewhat of what you can do with today widgets. Shortcuts can also launch pythonista scripts.
Most native frameworks can also be accessed via the objc_util module -- though this can be fairly difficult until you gain familiarity with both objc_util, ctypes and the frameworks in question.
The code will be totally different on Android -- the nativey things in iOS use nativey modules in pythonista. Android speech modules won't work in pythonista, and vice versa for instance.