Not sure what Google services you are using but typically services get loaded upon boot up dlls are loaded up. Perhaps you app is expecting the service to be up at the time. So try warm-booting the device and relaunch your app.
If it still fails, please share more details around the condition.
The application references Mono.Android.GoogleMaps. On Rugged Devices this functionality won't be included. I tryed change the .csproj, including a condition only to test I put
<Reference Include="Mono.Android.GoogleMaps" Condition="'$(Configuration)' == 'Debug'" />
Changed the Build Action of the activity from Compile to Content and included an Compiler Directive
call the activity that uses googleMaps
Changed visual studio to Release mode, the application was install correctly at MC67, the way I wanted. But I need to use another Condition, I can't use Condition="'$(Configuration)' == 'Debug'". I
Would like to use something like Condition="'$(RuggedDevices)' == "False". But I don't know how do do this. Any idea?
Based on the additional info, it appears as you're using the mono/Xamarin Android wrappers for .NET apps, right? Are you attempting to deploy this app on MC67 Android-based device?
It sounds like an Xamarin issue.
Yes. I tryed another way, at AndroidManifest.xml, I included the line
<uses-library android:required="false" android:name="com.google.android.maps"></uses-library>
And I found a site saying that I need to copy the files
com.google.android.maps.xml to /system/etc/permissions/
com.google.android.maps.jar to /system/framework/
I tryed, but I have denied access.
How can I copy files to these folders? Is there a command that I could use to change the permissions?
I need to do it inside my code application.
My code is:
System.IO.Stream mapsXml = this.Assets.Open("com.google.android.maps.xml");
/* error here, System.UnauthorizedAccessException */
System.IO.FileStream arqXml = new System.IO.FileStream("/system/etc/permissions/com.google.android.maps.xml", FileMode.OpenOrCreate);
byte bufferXml = new byte;
int offsetXml = 0;
while ((countXml = mapsXml.Read(bufferXml, offsetXml, 1024)) > 0)
arqXml.Write(bufferXml, offsetXml, countXml);