Difference between revisions of "Updating extensions for iOS 10"

From iPhone Development Wiki
Jump to: navigation, search
(OpenSSH: cleanup)
Line 35: Line 35:
  
 
If you get this error with scp:
 
If you get this error with scp:
sh: scp: command not found
 
lost connection
 
  
Wget [http://newosxbook.com/tools/iOSBinaries.html iosbinpack] and then move usr/bin/scp to /usr/bin/scp and chmod +x /usr/bin/scp
+
sh: scp: command not found
 +
lost connection
 +
 
 +
Download [http://newosxbook.com/tools/iOSBinaries.html iosbinpack] and then move usr/bin/scp to /usr/bin/scp and <code>chmod +x /usr/bin/scp</code>.
  
 
[[Category:Updating extensions]]
 
[[Category:Updating extensions]]

Revision as of 01:48, 31 January 2017

Let's collect knowledge like we did with iOS 9, iOS 8 and iOS 7 – paste in your notes and share what you've learned, and somebody else will organize it later. :) If you want to ask questions and share tips over chat with other developers, see How to use IRC for how to connect to #theos and #iphonedev.

Hey developer, you can add your knowledge here! Yes, you! Make an account and edit this page!

It's also helpful to double-check the statements here and add more info! These are notes and drafts from early research – feel free to update them.

If you want to see what's been recently updated on this page, you can use the wiki's history feature to compare the revisions (to look at the diff) since the last time you visited this page.

SBApplication

In iOS 9 and applications dynamic and shortcut items were accessed view dynamicShortcutItems and staticShortcutItems. These have now been changed to dynamicApplicationShortcutItems and staticApplicationShortcutItems;

AppList

For now you will need RocketBootStrap from https://rpetri.ch/repo .


SBIconController

You used to be able to manually create a shortcut item and activate it using _activateShortcutItem:fromApplication:. This has been removed.

Logging

The system logging APIs have changed again – ASL and syslog are now deprecated in favor of the unified logging system. NSLog() and CFLog() now send their output through this system.

The Console app in macOS Sierra supports reading logs from connected iOS devices – just select the device from the sidebar. The new concept seems to encourage being verbose, so system processes have become pretty noisy. Right click a message to reveal options for filtering to or filtering out messages from a process, library, subsystem, category, etc. You probably want to filter out irrelevant noisy processes otherwise you’ll be overwhelmed and need to scroll a lot. Set up a filter you’re happy with and click Save in the top-right. There is also the log command line tool.

If you want to use os_log, as a courtesy for others, use os_log_create with your package identifier as the subsystem. Keep in mind the APIs are new to iOS 10. If you support older iOS, retrieve the function symbols at runtime with dlsym() and fall back to an old logging mechanism if they are null.

SBDashBoardPageViewController

The iOS 10 lockscreen presents subclasses of SBDashBoardPageViewController as pages for the user to swipe through; new pages can be added with ease. See this wiki page for further information.

OpenSSH

OpenSSH is broken on iOS 10, which is why yalu comes with dropbear (an alternative ssh server).

If you accidently install the openssh package (BigBoss Tools includes it for example), simply remove the openssh package, reboot and rejailbreak.

If you get this error with scp:

sh: scp: command not found
lost connection

Download iosbinpack and then move usr/bin/scp to /usr/bin/scp and chmod +x /usr/bin/scp.