In Swiftkey how do you right an apostrophe (') for words like "can't", "hasn't", or "the dog's bone"? Is there a way to do it without taking your finger off the keyboard and going to another menu?
At the bottom there is no apostrophe like there is in swype, only a period. To get to the apostrophe you need to click on the button that says "123" but that requires taking your finger off the keyboard. Auto correction/auto detection has nothing to do with it since using an apostrophe to show possesion can is just as allowed as not having an apostrophe there to show plural e.g. The dogs bone vs The dog's bone.
I think that it is due to the keyboard layout.
SwiftKey's QWERTY layout do not put the ' key in the "abc" part of the keyboard. If you want to type a ''' with the QWERTY layout, you have to go to the "123" part of the keyboard and then type on the ' virtual key.
But unlike the QWERTY layout, the AZERTY layout has got the ' key in the "abc" part of the keyboard :
To switch to the AZERTY layout, go in SwiftKey settings > Languages and layouts. Then go to the keyboard language (the one you use) and type on the keyboard icon near the checkbox. Then select "AZERTY" when the list of available layouts is opened.
Languages and layouts
The way I do it is to have space insert the suggestion. That way I write cant and hit spaces and Swiftkey inserts the suggestion of can't in its place. I basically never use the apostrophe key.
I am not an user of Swiftkey, rather an user of Swype. I am suggesting this with an assumption that both apps should not be miles apart in their feature.
In Swype we can do this by moving the finger through apostrophe, considering it as a part of the word. So, if you would like to type can't then start swiping on c, to a, then to n, then to ', and finally finish at t.
You can see this demonstration video as well.
I read this article which says that I can "can install any custom keyboard as the default keyboard on Android". How can I do that? Does it require rooting?
Yes you can. I've used Swype as well as TouchPal Keyboard as alternatives.
Once you install any new keyboard, just go to Settings > Language & Keyboard to set your keyboard/text settings.
I found that even after changing the setting it didn't use the new keyboard. I had to do a long press in a text field. That showed an option for which input method to use. Once selecting the new keyboard it worked all the time.