iOS and Android app made using Xamarin.Forms that explores Azure Blob Storage
This Xamarin app uses a SQLite Database to save the metadata of the Photos (e.g. Url, Title) locally. The local database syncs, via an Azure Function, with an Azure SQL Database that contains the metadata of the Photos stored in Azure Blob Storage.
The Xamarin app also allows the user to take photos and save them to Azure Blob Storage. To do this, the Xamarin app uploads the image to an Azure Function, and the Azure Function saves the image in Azure Blob Storage, then adds the image metadata to the Azure SQL Database.
Click Create
This will take a couple minutes to deploy; confirm its existance in the Azure portal. We're done with the Function for now, but we'll be back to grab a couple values and add a couple values to the Application Settings.
SQL Database
into the Search Bar -> Select SQL Database
from the search results -> Click Create6. Select Server
Select Create New Server
Enter the Server Name
Create a Server admin login
Create a password
Select the closest location
Click "Select"
Select "Not Now" for the SQL Elastic Pool option
14. Select Pricing Tier
PhotoDatabaseConnectionString
Storage account
into the Search Bar -> Select Storage acount
from the search results -> Click CreateOn the left menu, under Blob service, click Blobs
Click the "+ Container" button to create a new container
Use "photos" for the Name, and for the purposes of this exercise, chose Public access level: Container (anonymous read access for containers and blob)
In the Storage Account, click Access Keys which are under Settings
You'll see key 1 and key 2 along with a Key and Connection String for each of those. Copy either of the Connection Strings.
On the Azure Portal, navigate to the Functions App we published from Visual Studio
Select "Application Settings"
In the Application Settings, scroll down to "Application Settings"
Create a new setting
BlobStorageConnectionString
PhotoContainerName
photos
as the corresponding value (This is the name of the container you created earlier.)FunctionsAPIBaseUrl
to match yours/api
).