📦 Manage your own internal Android App Store.
Manage your own internal Android App Store.
Web app • Android app
A public version of the web app is hosted on public-app-store.web.app.
The latest Android apk can also be downloaded here.
Public or private access to the store
Web | Android |
---|---|
Manage multiple applications
Web | Android |
---|---|
Manage multiple versions
Web | Android |
---|---|
Requirements
applicationId
with your own unique id in app/build.gradle
Add Firebase to your Android app
and fill in the formgoogle-services.json
and move it to your Android app module root directory
ADD APP
and Add Firebase to your web app
Android: Store.kt
Web: index.js
Firebase Database: use your own domain
├──admins
│ └──{$uid}
├──store
│ ├──applications
│ │ └──{$application_id}
│ │ ├──name
│ │ ├──packageName
│ │ ├──description
│ │ ├──image
│ │ ├──link_{#}
│ │ │ ├──name
│ │ │ └──uri
│ │ └──silent
│ └──versions
│ └──{$application_id}
│ └──{$version_id}
│ ├──name
│ ├──description
│ ├──timestamp
│ ├──apkRef
│ ├──apkGeneration
│ ├──apkUrl
│ ├──silent
│ ├──downloads
│ └──installs
└──analytics
├──downloads
│ └──{$application_id}
│ └──{$version_id}
│ └──{$uid}
└──installs
└──{$application_id}
└──{$version_id}
└──{$uid}
Firebase Storage: use your own domain
└──applications
└──{$applicationUid}
│──image
└──versions
└──{$versionUid}.apk
# Move to Firebase root directory
cd firebase
# Initialize Firebase (login popup)
firebase login
# Set the default Firebase project
firebase use --add
uid
found in Firebase Authentication page)
uid
firebase database:update /admins --data '{"<admin-uid>" : "<admin-email>"}'
# On Windows, create a JSON file instead (unsupported JSON input)
firebase database:update /admins update.json
uid
firebase serve
firebase deploy
A lot of settings can be tweaked in both web and Android apps
// Backup
firebase database:get / --pretty > database.json
// Restore
firebase database:set / database.json
// Backup
gsutil -m cp -R gs://<bucket_name> .
// Restore
gsutil -m cp -R . gs://<bucket_name>
Copyright 2018 Simon Marquis
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.