Xamarin Android Support lib references broken since installing Google Play Services - android

I have a project that I attempted to install Google Player Services through NuGet. Since trying to install the google package, my android support libraries as well as the google play service libraries are all showing up in my references as broken, no matter how I try to add, reinstall or change the references. They always break, throwing The "ResolveLibraryProjectImports" task failed unexpectedly. as an error in response.
I have looked around and tried everything that sounded remotely like my issue, to no avail. Any help would be appreciated.
I am running Xamarin v4.3.0.789 (4d2ed3d) with Xamarin.Android v7.1.0.43 (4a52f1e)

Not entirely sure why this fixed the issue. However after looking through, I realised that version of my packages had been updated, I assume that Google Player Services forced that, which then caused my whole project to go haywire.
Installed the version of packages I was using beforehand and it works again.

Related

How to resolve "Can't Update the app(Error Code : 901)" error?

I'm migrating one of my live applications from Native to Xamarin. I have successfully done that and now I'm trying to release the same on Google Play Store.
I have generated a release build for the same in Xamarin android. Following are the scenarios which will describe the issue I'm facing -
Fresh Install - As I have a release apk for my application, I'm able to install it on my device and it's working smoothly.
Update Scenario - As I have mentioned earlier that the application is already live which was developed on Native Android, I have installed the live version of the same and tried updating the app using the latest release build that I have generated from Xamarin. In this case I'm getting the issue.
Attached a screenshot for the reference.
What I have tried so far to resolve the issue -
As there are multiple questions related to this issue, I have tried following things to get rid of this issue -
Clear data and Clear Cache of Google Play Store application.
Checked the Signing keys are same as before.
Checked the package name is same as before.
Removed the Google account and added again as per the suggestions.
I need to resolve this error soon, so I can't use the Fresh Install technique as an option.
I am able to identify the issue and fortunate that it got resolved. Sharing it here so if anyone gets stuck for the same issue then they can refer this.
Identified Issue - The issue was quite silly as the version code wasn't getting updated from the UI of Android Manifest even if I was changing the values. That might be the glitch in Xamarin or Visual Studio (for Xamarin).
What I did to resolve this - I manually deleted the declaration of Version Code and other values which weren't changing from AndroidManifest.xml then from the UI section of the Manifest I upgraded the Version Code and build the solution for release. That's how things got resolved at my end.
Hope this helps. Thanks.

Google Play services out of date. Requires 10084000 but found 8118436

I'm trying to run Google Play Services on my Android emulator using Genymotion. I followed the steps in another Stack Overflow to download and install ARM Translation Installer and the Google Apps for my Android version (5.1.0). Up until this point, there doesn't seem to be any issues.
The issue occurs when I open my development app and try to connect to Google Play Services. I see Google Play services out of date. Requires 10084000 but found 8118436.
I know that this means the version of my emulator is 8.1 and the version that is being bundled is 10.0. However, I don't know how to make these two versions the same. I can't figure out how to either downgrade one, or update the other. Does anyone know how to fix this problem? Thanks in advance!
I figured out this issue. For those having the same problem, you need to download the correct APK. Go here to find it: http://www.apkmirror.com/apk/google-inc/google-play-services/

APKs generated through Eclipse are accepted or not?

I am a little new to Android development.
I have a hybrid app which uses Apache cordova plugins.
I am using eclipse to generate the APK.
But when I publish the APK, the Google play store rejects it saying:
APP UPDATE REJECTED
Your APK has been rejected for containing security vulnerabilities, which violates the Malicious Behavior policy. The Alerts page has more information about how to resolve the issue. If you submitted an update, the previous version of your app is still live on Google Play.
And, when I click on the alerts page the following error shows up:
Security alert :
Your app is using a version of Apache Cordova containing one or more security vulnerabilities. Please see this Google Help Center article for details, including the deadline for fixing the app.
I have already tried the followings:
Update the android platform (cordova platform update android), but no positive results.
I could not update all the cordova plugins as I am getting errors. (wanted to know can this be the issue)
I am building this APK using the Eclipse IDE and I went through this ADT plugin release note https://developer.android.com/studio/tools/sdk/eclipse-adt.html which says: The Eclipse ADT plugin is no longer supported
Eventually I will be importing my project to Android studio but I want an app update immediately thats why still using Eclipse.
If Eclipse is the reason then I immediately need to import my app to Android studio.
I want to figure out that which one of the last two point is responsible for my app rejection.
Also, if none of these are responsible then what could be the possible reason for my app rejection.
Thanks in advance.
An APK is an APK, regardless of where you developed the code. You can write the code in Eclipse, Android Studio, or you can write the code in your favorite plain text editor. The end APK will be indistinguishable regardless of which editor you use.
The error in this case seems to be pretty clear- your version of Cordova has known vulnerabilities and you need to update that.
Run cordova platform version android to check your version. The error message you are receiving will show for anything less than 4.1.1.
The best path would probably be to upgrade to 5.x, as detailed here.

Why does Localytics require google-play-services:ads?

I was running into problems with how many methods I have in my project, and have finally fixed it.
However, I noticed that the Localytics documentation says to include the dependency com.google.android.gms:play-services-ads. It is never used anywhere in my project, and I can't find anything on their website as to why its a required dependency.
My app runs perfectly fine without it as far as I can tell, but I have only tried building the project as a debug build.
play-services-ads used to be the only way of gaining access to the Advertising ID and it seems that functionality was added back in version 2.60 as per the SDK Changelog. The only mention of it appears to be in the testing attribution section, although that doesn't mean it is only used for attribution.
As of Google Play services 9.0, it has been moved to the play-services-basement dependency, which is much smaller. You should be able to use that dependency in place of play-services-ads without issue.

App installed from google play then new version reinstalled locally causes UnsatisfiedLinkError

We have an app on google play, and we are about to publish update, but testing update on JB device resulted in UnsatisfiedLinkError when calling System.loadLibrary("ourlib") in our code. ourlib is library compiled by us using NDK. This error shows only on 4.1 devices.
I suspect that it has something to do with new security on JB, app was first installed with Google Play with lets say version 1, and then reinstalled with version 2 using adb or from device using apk.
I could not find anything related to that on google, what could be the problem?
this problem
http://code.google.com/p/android/issues/detail?id=35962
looks similar but it appears that it was an error in google play actually.
Does that mean that you are trying to use standard/system library? Maybe the version of the library that you are trying to load does NOT contain particular functionality that you intend to use. Check android docs when the functionality became or stopped being available.
The solution is to use:
$ adb install -r -l my.apk
this makes apk to be reinstalled with use of forward-lock (aka. copy protection), I supose that because apk was upladed to google play with copy protection enabled then also forward-lock option in adb had to be added. I know JB introduced some changes with forward lock so this might be the case. I dont know internals of what really caused this problem, but above seems to work.

Categories

Resources