BlobCache.UserAccount cloud syncronize on Android - android

I am trying to understand BlobCache.UserAccount option using akavache. So far I could successfully implemented BlobCache.LocalMachine which works only offline.
Accoridng to akavache documentation;
Xamarin.iOS will may remove data, stored in BlobCache.LocalMachine, to free up disk space (only if your app is not running). The locations BlobCache.UserAccount and BlobCache.Secure will be backed up to iCloud and iTunes.
Windows 10 (UWP) will replicate BlobCache.UserAccount and BlobCache.Secure to the cloud and synchronize it to all user devices on which the app is installed
I guess this is something done automatically by the OS when you place the data into the certain folders, it is being backed up and this is what akavache is doing. Is that correct?
If yes, Is there a way to have something similar with Android. Nothing is described for Android. Is there some backup happening on google drive or we can implement easily?

I think this is iOS specific indeed. I tried to look it up into the code, but couldn't find something specific for the UserAccount. So, I think your assumption is correct. It might be for a different reason though, but I honestly think its iOS specific.

It looks like with android it doesn't store into google drive
https://github.com/akavache/Akavache/blob/master/src/Akavache/Android/AndroidFilesystemProvider.cs#L40
I haven't done that much with saving files into google drive but it doesn't seem quite as straight forward as it is on Windows or iOS. On Windows just save into a Roaming Folder and run with it. Where as with Android it seems less plug and play
https://developers.google.com/drive/android/get-started
Creating a new Android application that uses the Google Drive
Android API requires several steps.
I think in theory you could register your own IFileSystemHandler into Splat if you want to wire that connection up.

Related

How can I programmatically install apps on android from a system app without being device owner?

I have tried to find a solution on this by searching the net for quite some time. If there is a working solution to my question on stackoverflow, it would be nice if someone points me to it.
So problem is very specific:
I like to implement an app updater that installs apps without any further user interaction as soon as the user has started the setup process.
This would something like the way it is done by GMS (Play Store).
Constraints:
The implementation has to work on devices back to Android 6.
I am an Android system developer and I want to integrate an update for our own hardware.
I have an existing app that is running as system app in the system context.
The app cannot be device owner, as this will block MDM support that customers might want.
I can access hidden APIs of the android system.
The solution may not require root access to the device and shall not use any hacks like calling pm install.
The device has to pass the Google approval what restricts everything to the use of the system APIs provided by Android. I think that this is the reason, why it is so hard to find a proper solution or pointer to a code sample for this.
Has anyone worked on this? Are there apps (like free app-stores) that implement something like this?
Edit: I have found a partial response to my question here: https://stackoverflow.com/a/5805299/6289291
The major difference is, that when building from within the AOSP tree, reflections are of course not required and there are some problems I encountered that I will try to summarize in a response to this question as soon as I have resolved those in a proper way.

Download xcode from phone

Is it possible to download my apps code from my IPhone 5s and Android. My developer in India disappeared and I am trying desperately to get a hold of her. I dont know if there is a holiday over there or if she is sick.
Anyhow my app is finished on both platforms and all that needs to be done is transfer the database to Amazon and the respective stores.
Is there any way to rescue this code on my phones?
If I understand your issue correctly, you want to reverse engineer or extract the code from a copy of the app installed on your phone.
It's called App Decompiling and while in theory, it's possible to do it, it won't "just work" as easy as copy & paste. Especially taken you've got 2 different platforms to decompile from.
On iOS, for example, the apps are protected by its DRM https://en.wikipedia.org/wiki/FairPlay technology which splits the app into segments and encrypts each of them with a separate key. To attempt to decompile the app, you'll need to jailbreak https://en.wikipedia.org/wiki/IOS_jailbreaking your device, which immediately voids all of its warranties. Even then, it's not certain you'll be able to extract enough of the code to rebuild the app.
On Android, it's slightly easier, but would still not exactly grant you the Java source code.
Bottom line, it's extremely difficult, unreliable, quite expensive (if not performed by yourself) and probably not worth it in your case.

How to run my iOS app on iOS emulator (like emu/cider app) in Android?

This is my first question on Stack Overflow, so sorry in advance if I asked the question in the wrong place or messed up.
I have this project where I am repurposing an old android tablet for the project. I need to make an app which will always be open on the tablet. The problem is, I am not proficient in making apps for Android. So, I thought let me run an iOS emulator (like iemu or Cider APK). Then, I realized I don't know how to put my app on the emulator.
I was thinking of ad hoc, but I am not sure if it will work. Then I though about stuff like Snapchat ++ or Instagram ++. How do they distribute it? For those who are unfamiliar with it watch this video starting at 1:55.
So in short, can I put my iOS app on the emulator or is it just better to get better at making android apps?
Thanks in advance
Based on my quick research I checked just briefly bunch of articles about Cider APK or iEMU APK and also comments and I downloaded one app but didn't run it because its basically distributed from some google drive account and looks quite dangerous to run on my phone.
But based on my understanding how this is actually doable https://appetize.io looks like only way, as this is merely some remote virtualization solution and they have business model instead of ad scam business model as those others. appetize.io runs in browser and has a free plan with limitations but usable , also they allow to upload your apk to their server to run it on their iOS devices that is basically visible in web browser, while quite slow but working and its real thing and useful.
I am guessing you would get Cider APK or iEMU APK.
I have never done it myself but I know it's doable. Read their documentation.
Install the emulator in your IDE and run by choosing the desired destination.
Hope this helps.
http://www.androidcrush.com/run-ios-apps-on-android/

which database should I use?

I am planning to build a web application and android app, which will manage huge numbers of notification (push notification), and can work in slow internet connection too. I need to send and get instant notifications. Number of users can be thousands or millions, application will have multiple servers (web farm), multiple database. Now I need to decide that which database will be best for this kind of application and which language should I use for programming. Please help me out. Any suggestions will be appreciated
Well, first you need to decide what your immediate needs are. Are you going to use this on a platforms that could potentially have hundreds of people accessing information at the same time? Then you need to estimate your future needs.
This will help you to decide your database system.
As per my experience i am suggesting you to use MYSQL database.
I Blindly Suggest you to Use Parse Cloud Database,as it provides SDK for All mobile Environments like Android and IOS for easy implementation and also it recently Launched a Javascript SDK to use.Its free for Trial.MultiPlatform Support and Secure
Check it out Here: https://www.parse.com/
Are you sure you going to get to thousands and millions users ? Everyone starts from scratch (read: zero users, except some friends). By this I mean, that you have to concentrate on what's the real issue within your development (growing app user base is different story):
Creation of Android app and it's lifecycle (updates, support of previous versions & etc).
Back-end. Will I also work on Back-end. Working on 2 'projects' (Android app and it's back-end) isn't easy. Not everyone is experienced enough to work on multiple assignments at the same time.
Valuate an option of using SaaS/Paas backend. Most of the have trial or free version for developer.
Third option is great. Get cheap/free web host. Store there configuration, that your Android app will download when it starts. In configuration you should declare what's the back-end and how to communicate with it. You can use any of known services like https://www.firebase.com or https://parse.com/plans or even use Google App engine free tier / AWS free tier.
About developing app for Android - if your app doesn't need any complex calculation or libraries - just write it with JavaScript. It's fast enough. Though, Java apps are always faster and easier to debug.
Good luck !

Can I use android for this? (app for corporative use)

(Sorry for my english)
I'm new using Android (in fact, I'm just testing android) and I have a lot of questions...
Well, let me explain you the situation. In this moment, in my job, I am writing my code with C# and run it on Windows Mobile 6, the apps are used to make sales, send bills, reserves, etc. The devices (iPAQ 216) are given to the salesmen, and they must use the apps and update them via internet.
Each salesman have a unique client list, unique data and (in some cases) an unique set of apps, which means that I need to prepare a different package for each salesman. Using a Microsoft tool (cabwiz) I can prepare automaticaly a different package for each one of the 150 salesmen. They download their specific package using a tool wirtten by me, and install it and everyone is very happy (maybe)...
Is that possible in Android? How? and if it is not possible, do you know an idea how to accomplish somewhat like that...?
It's not going to be as easy as cabwiz, I can tell you that. But it would be possible, theoretically, to write a script that modifies/generates the unique portions of the source and then compiles a new copy for each user.
If the only difference between the apps is the data on them, then there is no need to generate a different package for each user: have the app download the data from your server and save it after the app is installed. You could also make some modules (I can only guess what kind of functionality you're talking about with regards to different apps per user) only accessible to particular users.
Yes, it's possible however:
You may want to look into writing in java rather than C# as that's more officially supported on android
There are some limitations of the android APIs, in particular there are basic behaviors of the device that can't be altered - without rooting there's no equivalent to the "hook" functionality of windows.
Make sure you get devices with the menu option to enable installation of applications from 'unknown sources'; otherwise deployment will be a lot more difficult. At that moment, this amounts to avoiding AT&T, as their devices presently confine you to the android market or physical connection to a machine running the developer tools as distribution channels. (As a work around you can upload your apps to the market and not publish them, though that won't fully keep them private unless you also include something to require authorization when they run. You could also install the minimal set of dev tools on the salesmens' laptops)
You will probably want to learn about the command-line application build tools and scripting in order to generate a custom apk for each salesman. Once the devices are set to allow unknown sources, you should be able to email the salesman the apk (or a link to it) as an attachment. You should also be able to make the custom apk refuse to run except on a device matching some fingerprint data you've previously collected. While you can develop for android under windows, you may want to look into switching to linux in order to make some of this scripting a little more natively elegant.

Categories

Resources