Solved: Handoff problem with iOS 8 and OSX 10.10

As a developer, I’ve tested OSX 10.10 (Yosemite) and iOS 8 for a long time. There was a strange issue after I reset my OSX:

When I try to make a call from OSX, the calling box will be closed after 10 sec without any information in OSX 10.10 DP4. In DP5, it will say that “Your iPhone is not configu…”. Also, no SMS can be sent from OSX either. But when typing message on iOS, there will be an icon displayed on the left side of Dock in OSX.

Finally, I know the reason.

We know that the account name is one email address. And you can add more email addresses as alias. The problem of the current version of iOS 8 and OSX 10.10 is: if you used the email address for Facetime and iMessage is different from the one used in iCloud for OSX, no matter these email addresses are linked to the same iCloud account or not, the handoff function won’t work, just like the situation I mentioned above.

Before Apple fix this bug, we have to use the same email address for these place.

This issue is submitted to Apple.

Disable Safe Sleep in OSX

While OSX falling asleep, it save all memory into a local disk file, for avoiding data loss caused by batteries running out while sleeping. But it comes with some disadvantages:

  • That file is the same size as your memory. It eats your hard drive. You may not want this on a SSD solution;
  • Writing a so huge file requires more time while entering sleep mode.

And, when is the last time your mac’s battery running out while sleeping? Never, I guess.

Good news is, if you pleased, you can disable this function by running these two commands in terminal window.

sudo rm /private/var/vm/sleepimage
sudo pmset -a hibernatemode 0

These commands above will delete the existed image file and disable the further creation process of this file. Of course, after taking these steps, your computer will not able to resume from sleep while battery running out, by taking a cold boot instead. You may lost all unsaved data in that rare situation.

Time Sync between OSX and Windows

Through Boot Camp, we can install a dedicated Windows instance with OSX in the same mac computer. Due to the different time models, you may see that the time is not right while booting into another system.

Reason:

  • OSX, as well as other unix-like system, setting UTC to hardware time, convert to local time dynamically while displaying;
  • Windows use LOCAL TIME as hardware time directly.

You may not realized this because one of these reasons below:

  • You are in England, or other countries in Time Zone 0 (GMT);
  • Your computer system, both OSX and Windows has a client of NTP, which will get the right time from internet server very soon after booting. Certainly, the related computer should have an active internet connection.

How to fix it:

I didn’t find a way to change the time model of OSX. But we can do that in Windows.

  1. Start Regedit;
  2. Nav to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation;
  3. Create a new DWORD named as RealTimeIsUniversal, and set it value to 1.

Fix “Open With” menu of OSX

After removing and re-installing some software, there may be some of obsoleted or duplicated item in osx “Open With” menu of right-click mouse menu. In that case, you need to run this code in terminal to rebuild that menu.

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain user; killall Finder

As you seen, after rebuild menu, Finder will be killed and restart also.

Alternatively, you may want to save that code as a shortcut by this:

  1. Start Teminal;
  2. nano .bash_profile
  3. write this text below and save that file:
    alais FixOpenWithMenu = '/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain user; killall Finder'

After doing that, you will only need to type FixOpenWithMenu in terminal window instead of that long command.