Recently I sent an app to Play Store which supports wearables.
I received this as feedback:
App has Wear functionality that is visible to the user.
What does that mean?
This is probably because you uploaded the wear module APK instead of the mobile APK (which embeds the first one).
Remember that your app needs to go on the phone first, then the watch. Hence the dual packaging.
Related
We have developed a payment application with native android to compete in the local market. Our competitors have made it so that when their applications detect ours, theirs automatically disables itself. The problem is that our users use their applications as well so we wanted our application to be unidentifiable by the other apps.
Our solutions for this have been distributing our app manually instead of playstore and generating a unique bundle id for each individual user.
What else can we do to get around this?
till Android 10 any app can list ALL apps installed on device. starting Android 11 there are some limitations and by default you can't list all apps, so you are "safe". BUT 3rd-party may request QUERY_ALL_PACKAGES permission and will detect your app as well. note that Google Play Store have special policy for such apps, not every app may be published with it
still your app may be detected when it will use this 3rd-party apps API/Service (depends on way for access) and then it will lock itself
I have an android app that has a login and OTP features.
I have generated the release version of the app and we were able to use it when we download it from external link.
However, when we download the same app from PlayStore, we are unable to pass the OTP Screen although we receive the otp.
Whenever we add the otp number, it just remain in the same page and we can't proceed.
My point is, why we have different behavior when we download the app from the PlayStore?
What can we do to debug or troubleshoot the app in this case?
There won't be any difference between the app that you submitted to the play console and the release app you generated if it is the same android package.
If you really want to check, you could use the testing track to test your app.
More information here https://developer.android.com/distribute/best-practices/launch/test-tracks
I am working on a native Point of Sale application for Android. The application is being written using Xamarin.
Most of the functionality for the app will reside in a single web page application. The native app will mostly be a wrapper around this website.
In my Point of Sale app, when the user goes to close a ticket, I want to launch the Square POS app to handle credit card entry.
I've followed this documentation on the Square website (https://developer.squareup.com/docs/pos-api/web-technical-reference#mobile-web-on-android) which tells you how to build the Intent to launch the Square POS app.
When I build my native app in Debug mode and debug it, the Intent works correctly. I click a button in my app, the Intent object is built, the Square app loads, I can swipe/key in a credit card, the response calls back to my native app, everything works.
If I build my native app in Release mode and upload it to my physical Android device and then run the app, the Intent also works correctly. The Square app loads, I can process cards, etc.
If I publish my app to the Google Play store, download it onto the same Android device, and run the app, the Intent does not work. When I click the button in my app and build the Intent and run it, I get this error code from Square: "com.squareup.pos.ERROR_INVALID_REQUEST". According to Square's website, this error code means: "The information provided in this transaction request is invalid (e.g., a required field is missing or malformed)."
I don't understand how debugging the app on my physical Android device works correctly, building the app in Release mode and uploading it to my Android device works correctly, but when publishing the app to the app store and downloading and running it does not work correctly.
I've tried uninstalling the app from my device then downloading it from the Play Store, I've tried clearing the cache/data from the Play Store app, nothing seems to work.
I found the answer. In the Square Developers dashboard, you specify the fingerprint of the certificate used to sign your Android app. I had gone in and provided that fingerprint, but in the latest release of our native app to the Google Play store, someone had turned on the "Re-sign app with a certificate hosted on Google's servers" option. So the .apk was getting re-signed with a new certificate that had a different fingerprint.
I added that additional fingerprint to the Square Developers dashboard and now the process works.
I have followed the sample here: https://github.com/googlesamples/android-WearVerifyRemoteApp. I ran the app on Wear Emulator (Android 6.0.1). I reached the point where the app is not installed on phone and want to launch the app link on Google Play on the device:
// Create Remote Intent to open Play Store listing of app on remote device.
Intent intentAndroid =
new Intent(Intent.ACTION_VIEW)
.addCategory(Intent.CATEGORY_BROWSABLE)
.setData(Uri.parse(PLAY_STORE_APP_URI));
RemoteIntent.startRemoteActivity(
getApplicationContext(),
intentAndroid,
mResultReceiver);
I attached the debugger and, yes, I reached this line, but nothing happens. Google Play is not launched on the phone. I am sure I am connected to the phone as other notifications from the phone (real device) appears on the emulator.
Edit:
Not clear why but connection from the phone to the emulator is really buggy. It's really frustrating and the issue was solved but disconnecting and reconnecting many times.
AFAIK, you need to have a phone APK and a watch APK in your Android Wear app then you must use the Multi-APK delivery method. which is, as mentioned,
Multiple APK support is a feature on Google Play that allows you to publish different APKs for your application that are each targeted to different device configurations.
If you haven't done so, try enabling Advanced mode in your application's APK files tab to be able to publish multiple APKs for your app.
For more information, see Packaging and Distributing Wear Apps.
I want to know what happens to users already installed applications, if i made any change in backend application and deploy module to app engine???
i.e i installed an application in play store yesterday with google storage backend in java. Now i wanted to add new feature to my existing app. but i am afraid if i did something wrong in backend application and deploy it to app engine, whether it will effect my installed application and users????
Your already published app will be the same as when you published. If you had any communication with backend app will expect that backend will be working.
You can change anything in your backend as long as old endpoints will be working. If you need to make bigger update and remove some of elements in backend your app you should check version of backend API in your app and notify user about needed update of app.
Best way to check if everything is working is simply run existing app and verify if everything is ok. If anything broke up prepare fixed version of app and publish to play market as soon as possible. Users will get notification about update of your app. In that case they will have not working app until update.