1. I think there are recent videos uploaded by some members on YouTube. The video tutorials uploaded by Erel are still relevant.
2. Yes, direct access is possible but not recommended. Better is to use a middleware like jrdc2, Web service or through Web API.
3. Yes, there are many ways. If connection lost and server is unreachable, app will show an error.
4. Yes. SQLite is perfect for the job but CloudKVS can also be use.
5. Yes, you can save the photo in the app Internal directory where the app has permission to read and write. You can then upload to a server as Blob or binary using jrdc2, convert as Base64 string value or post as multipart data through form post or API.
6. Yes if you use B4XPages framework and cross platform XUI Views for both Android and iOS. Most of the code and layout design can be shared. This is why B4X is so powerful to create cross platform native apps.