How can I read data saved with NSUserDefaults in the Apportable version of my app, from a pure Android version? - apportable

I'll be updating an old app I'd ported with Apportable to a pure Android version. I want to be able to rescue users' old data.
The old data was a dictionary saved with [[NSUserDefaults standardUserDefaults] setObject: forKey:]
I assumed I might find it in the SharedPreferences of Android, but going through the keys in PreferenceManager.getDefaultSharedPreferences(applicationContext) didn't find anything.
I would very much appreciate any pointers.

Related

How to transfer android studio's local history from one version to the other?

When I updated android studio, when going into the ide, my local history wasn't appearing, I have backed it up so when I went to move it to its new directory, in the new version, it kept being automatically wiped every time I tried starting android studio, is there a way of using the local history from an older android studio version on a new one or would I have to downgrade android studio back to its original version?
Edit: Here's a possible workaround from this comment - you have to copy/backup the whole Android Studio folder of the old version and then merge it with the new one - because the files in Local History internally use content from outside that folder
At this time it's not possible to use Local History created from a different version of the IDE. Your backed up copy of the history won't work with the new version it's considered corrupt and gets reset.
First let's identify what is Local History
Local History helps you constantly track all changes made to a project independently of version control.
Since Android Studio is InteliJ based you can also find information about it in the InteliJ documentation:
https://www.jetbrains.com/help/idea/local-history.html
Note that Local History is not a replacement for a proper version control for long-term versioning. Local History is cleared when you install a new version of IntelliJ IDEA.
This includes app updates
You can monitor the following ticket for more details and updates:
Provide a way for the local history to "survive" VFS crash and Invalidate Caches and reinstallations
It seem you rely on Local History to such extent that you even consider a downgrade to an older version, but as the authors of the IDE state:
Local History is not a replacement for a proper version control for long-term versioning.
You would benefit much more to just use a regular versioning system to save significant checkpoints during development.

Why Android Studio create by default a project based on 'appcompat' library

I decided lately to move from Eclipse ADT to the latest AS version.
The first weird thing that I've noticed is that when I create a new project, it is always based on the Android support library even though I selected the minimum SDK to be level 19.
What is the reason for that?
Is there a way to configure it otherwise?
The reason for this is mainly backward compatibility. Right now, you may want to make your app for API19+, but later you may decide to lower it a bit down to support more devices, and you shouldn't be having problems with that, if you use support library.
There's also the thing that support library gets updated much more often than Android core library, therefore, if you base your project on it, it should be pretty much bug free.
One more thing, if you extend activity compat for example, the activity checks what version of Android you are currently having on your device and uses core features automatically if available, so it's good for you in many ways to use support library :)

AndroidStudio update destroyed everything and I need help as to which way I should rebuild (details of fiasco within)

After this huge mess from one AndroidStudio update, am cleaning everything and starting from scratch.
I'd like to ask if anyone knows if I should go with specific versions of Java.
But first my headache, although I just cleaned my computer of AndroidStudio.
I have Win 10 64 bit
HAD AndroidStudio 1.51 (it said it was JRE:1.7.0_79-b15 amd64)
After the update I had a "Unsupported major.minor version 52.0" error
Following some posts I upgraded the Java on my machine.
First "1.8.0_74" but AndroidStudio couldn't find the JDK directory, so I installed "1.8.0_73" and AndroidStudio found the JDK directory. But then I started getting rendering errors but with Rendering Problems Exception raised during
rendering: com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser(Ljava/lang/String;)Lorg/xmlpull/v1/XmlPullParser;
Anyway, that's it. This has become such a tragedy that I would rather start from scratch, but if anyone could point me as to the proper (steps) of which way I should go, I would really appreciate it.
Thanks ahead,
Sergio
I met this issue when I updated the api android 23 N (preview). In xml editor, change the Api to render into Api 23 android 6.0 and Autimatically Pick best.This would solve the problem.
refer: link
Yes.. i also faced same problem,I have resolved with changing the version to api 23.generally it will take best/latest version ,in my case its set to N preview.

Could not find SDK Bing.Maps.Xaml, Version=1.113.0601.1

I am working with windows 8.1 store app.In my app using the bing map sdk. I have added the bing map sdk extention.But I got the error "Could not find SDK Bing.Maps.Xaml, Version=1.113.0601.1".Please give a suggestion.
The version of Bing Maps you are referencing is for Windows 8 only. There is a new version that is for Windows 8.1. The new version has some additional features and a lot of bug fixes. You can find the Windows 8.1 Bing Maps control here: http://visualstudiogallery.msdn.microsoft.com/224eb93a-ebc4-46ba-9be7-90ee777ad9e1
Check if you have installed the latest version of the sdk since the one you've added the reference to is not for Window 8.1.
Also, one other possible solution consists in editing and removing the reference to the Bing Maps elements directly in your csproj file.
So to do as said, here are the steps:
Edit the csproj (or vbproj) file directly as xml content (right-click, unload the project and right-click Edit the csproj)
Remove the element that references the Bing Maps control inside the section
Save the document and reload the project then add the reference using the usual way
If, for an unknown reason it won't work, it might be useful to uninstall and reinstall the Bing Maps extension (SDK) and do the same process as before by removing and adding back the reference to the extension.

Can I make MonoDevelop look good on a Retina display?

I bought a new Retina MacBook Pro to develop for iOS with MonoTouch.
It is extremely frustrating that, probably because it is built on Gtk#, MonoDevelop is very blurry.
I can cope with blurry UI but I can't read or write code because it hurts my eyes.
What is the current status of Retina support in Gtk# and MonoDevelop?
Is there any (experimental) compile flag at least to enable proper code rendering?
If I want to contribute, which component is in charge of this? Is it Gtk# or Gtk itself?
Update
This has been fixed as of MonoDevelop 3.0.4:
Other improvements and bug fixes
Fixed rendering on MacBook with retina display
So just go and download it.
Workaround for Older Versions (and other apps, too)
There is a temporary work around I used for WebStorm that worked well. It should work for MonoDevelop too.
You can use that in the mean time until the Xamarin folks get an update to MonoDevelop out.
Here it goes:
Locate MonoDevelop in Applications and click Show Package Contents
Open Contents/Info.plist in any editor and add this after opening <dict>:
<key>NSHighResolutionCapable</key>
<true/>
Copy and paste MonoDevelop app bundle, delete the old one and rename the new one back to MonoDevelop. This will flush system caches.
You will notice that MonoDevelop.app info now has Low Resolution option unchecked and the code renders smoothly.

Resources