View Single Post
Old 06-15-2014, 04:18 PM   #1
Philantrop
Addict
Philantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beautyPhilantrop does all things with Zen-like beauty
 
Philantrop's Avatar
 
Posts: 296
Karma: 32153
Join Date: Dec 2008
Device: Kindles (e-ink)
[Device Plugin] iOS reader applications

This plugin is DEAD due to changes by Apple. This thread should be kept for historical reference.

This plugin is NOT compatible with iOS >= 8.3. Nothing can be done about it till Marvin itself is adapted to the changes by Apple.[/B]


Many of you will know this plugin and might be surprised to see me post a new thread. I'm taking over maintainership from Greg who decided to retire from Calibre development. I'm very, very grateful to you, Greg, for creating these great plugins and I'll try my best to keep up to your standards.


The iOS reader applications plugin enables communication with selected iOS reader applications installed on an iDevice. Supported iOS reader applications include
Marvin (recommended reader app)
iBooks (OS X and Windows only), GoodReader / GoodReader 4, Kindle for iOS.
The driver architecture is designed to be extensible to support additional iOS reader applications.

The advantage of having a single, unified driver for multiple iOS reader applications is to avoid having several different calibre device drivers all responding to the same USB fingerprint for your iDevices.

Installation:
  • Open iTunes Preferences (OS X and Windows). In the Devices section, enable the checkbox Prevent iPods, iPhones, and iPads from syncing automatically. Close iTunes.
  • Disconnect all iDevices from your computer before installing or updating the plugin.
  • Open calibre Preferences|Plugins|Get new plugins to install the iOS reader applications plugin. Or, download the attached zip file, install the plugin manually, then restart calibre as described in the Introduction to plugins thread.
  • Configure your preferred iOS reader application as described in the following section.
  • Connect your iDevice with a USB cable. The driver supports a single connected iDevice. If you have more than one iDevice connected, the driver will not start.

Configuring your preferred iOS reader application:
GoodReader / GoodReader 4
Spoiler:
  • Disconnect your iDevice.
  • Open Preferences|Advanced|Plugins|Device Interface plugins, then highlight iOS reader applications.
  • Click Customize plugin.
  • In the Preferred iOS reader application combo box, select GoodReader or GoodReader 4.
  • There are no configuration options for the GoodReader driver.
  • Accept all changes.
  • Exit calibre.
  • Connect your iDevice with GoodReader installed, restart calibre.
  • When calibre connects to GoodReader for the first time, it will take several seconds per book to create a database of metadata and covers. Subsequent connections are very fast. For example, the initial connection with 100 PDFs installed in GoodReader takes 2:40 (two minutes, forty seconds) on my development machine. Subsequent connections take :03 (three seconds).
  • This driver is very basic, as GoodReader is not aware that calibre is managing its My Documents folder. It is included as a proof-of-concept model for developers wishing to develop other iOS reader application drivers.

iBooks for iOS
This plugin does not work with iBooks under OS X 10.9 (Mavericks).
Spoiler:
  • Available for OS X and Windows only. This is because communications with iBooks is handled through iTunes, which is not available under Linux.
  • It is important that you configure calibre and iTunes to work together properly as detailed in the Calibre + Apple iDevices: Start here forum sticky. Add at least one book from calibre to iTunes using the Connect to iTunes method to confirm your configuration.
  • With your iDevice connected, open iTunes on your computer and select your connected iDevice in the DEVICES section. On the Summary page in the Options section:
    • Disable Sync with this iPad over Wi-Fi
    • Enable Manually manage videos or Manually manage music and videos (depending on the installed version of iTunes).
  • The difference between using this plugin and Connect to iTunes is that books are sent directly from calibre to iBooks for iOS on your connected iDevice, without storing a copy in iTunes or requiring a sync.
  • Open Preferences|Advanced|Plugins|Device Interface plugins, then highlight iOS reader applications.
  • Click Customize plugin.
  • In the Preferred iOS reader application combo box, select iBooks.
  • Accept all changes.
  • Exit calibre.
  • Connect your iDevice with iBooks installed, restart calibre.

Kindle for iOS
Spoiler:
  • Disconnect your iDevice.
  • Open Preferences|Advanced|Plugins|Device Interface plugins, then highlight iOS reader applications.
  • Click Customize plugin.
  • In the Preferred iOS reader application combo box, select Kindle.
  • There are no configuration options for the Kindle for iOS driver.
  • Accept all changes.
  • Exit calibre.
  • Connect your iDevice with Kindle for iOS installed, restart calibre.
  • The driver allows you to sideload books from calibre to the Kindle for iOS reader application and remove books that have been sideloaded. It does not show books downloaded from Amazon.
  • The driver does not support metadata editing or collection management.
  • This driver is very basic. It is included as a proof-of-concept model for developers wishing to develop other iOS reader application drivers.

Marvin
Spoiler:
  • Disconnect your iDevice.
  • Open Preferences|Advanced|Plugins|Device Interface plugins, then highlight iOS reader applications.
  • Click Customize plugin.
  • In the Preferred iOS reader application combo box, select Marvin.
  • Click on the Marvin Options tab, then the question mark icon (?) for an overview of using calibre with Marvin.
  • Accept all changes.
  • Exit calibre.
  • Connect your iDevice with Marvin (v1.7 or later) installed, restart calibre.
  • Start Marvin on your iDevice. In the Home or Library screen, touch Get books in the lower right corner, then touch calibre to begin communication between calibre and Marvin.
  • To close the calibre connector and return control to Marvin, click Disconnect.
  • For a more detailed overview of using calibre with Marvin, see this post at Marvin's website.

Special Notes:
  • Requires calibre 1.37 or later.
  • If you are using calibre in a Windows or OS X environment, iTunes must be installed. The driver depends upon software libraries and services installed with iTunes.
  • This plugin replaces the Apple iDevice interface plugin. If you currently have the Apple iDevice interface plugin installed, you will need to remove it before installing this plugin.
  • iOS7 users:
    The first time that you connect your iDevice to your computer after updating to iOS7 you will see a dialog that looks like this:
    Click Trust. Once you have confirmed that the connected computer is trustworthy, you shouldn't see that dialog again. You need to confirm this dialog before the plugin will work.
  • Important note for Linux users: If you have iOS 7 installed on your iDevice, you may not be able to click Trust and dismiss the dialog. This is a known issue with libiMobileDevice and eventually will be corrected through a patch to your distro. You will be unable to use this plugin with iOS7 until the patch is available for your system. Users with earlier iOS versions will not be affected.
  • The iOSRA plugin logs usage data in a manner consistent with calibre’s logging of usage data. No identifying data or library metadata is collected. To see a sample of how the data is analyzed, see the latest iOSRA activity report.

If you have problems:
I'm having problems installing or updating the plugin
  • Disconnect all iDevices from your computer before installing or updating the plugin.
Calibre crashes when I am using this plugin
  • Create an issue at the iOS reader applications issue tracker, including the type of iDevice, its generation, and the cellular provider (or cellular modem type). For example, "iPad 4th generation, GSM" or "iPhone 5S, Verizon", and the iOS reader application you're connecting to (e.g. iBooks, GoodReader, Kindle, Marvin).
  • Create a debug log by following the directions at the plugin's issue tracker.
  • Add the debug log to your issue report. I will receive an email when the issue is created or modified, you don't need to create a reply in this forum.
My iDevice is not recognized by calibre.
Try each of the the following steps to see if they allow your iDevice to be visible in calibre's main toolbar:
  • Review the steps to select your preferred iOS reader application in Configuring your preferred iOS reader application above.
  • Confirm that you have a single iDevice physically connected to your computer while using calibre. In other words, disconnect any other reader devices like a Kindle that calibre might connect to, and any other iDevices connected to your computer via USB (like an iPhone).
  • Exit calibre, physically disconnect your iDevice.
  • Reconnect your iDevice, restart calibre.
  • If you see a chevron (») at the right end of the calibre toolbar, you have additional icons that can't be displayed at your current window width. Click the chevron to see the rest of the icons. To adjust the order of the toolbar icons, go to Preferences|Interface|Toolbar The main toolbar when a device is connected.
  • (OS X and Windows) Confirm that iTunes is installed on your computer and up to date, and that your iDevice shows as the only connected device in iTunes.
  • Confirm that Sync with this iPad over Wi-Fi is disabled in iTunes.
  • Try another USB cable.
  • Disconnect your iDevice, then do a hard reset on your iDevice by holding the Home and Power buttons at the same time time until you see the Apple logo, then release the buttons, then try again.
  • If you are using Marvin, confirm that you have only one version of Marvin installed on your iDevice. For example, if you upgraded from Marvin for iPad to Marvin universal, remove the older Marvin for iPad.
My iDevice is still not recognized by calibre.
  • Start calibre with your iDevice connected.
  • Open Preferences|Advanced|Miscellaneous.
  • Click Debug device detection.
  • Copy the results to your clipboard.
  • Close the Preferences dialog.
  • Create an issue at the iOS reader applications issue tracker, including the type of iDevice, its generation, and the cellular provider (or cellular modem type). For example, "iPad 4th generation, GSM" or "iPhone 5S, Verizon".
  • Paste the contents of the clipboard into a new comment in your issue.
  • It is not necessary to add a post here when creating an issue. I will receive an email when GitHub issues are created or updated.
FAQ
  • When will you be adding support for other iOS reader applications?
    The iOS reader applications device driver is designed to accommodate multiple reader applications. Supporting additional readers requires the developer of the iOS reader application to add code to their product to talk to the driver, and for the driver to add code to talk to the specific iOS reader application. An overview of the protocol and all source code is available at the plugin's GitHub repository.
    Developers planning to add support for additional iOS reader applications should contact me via the issue tracker or PM after reviewing the GitHub README.
  • How do I uninstall the plugin and its resources?
    • Go to Preferences | Advanced | Plugins | Device Interface plugins, select iOS reader applications.
    • Click Remove plugin.
    • Click Apply.
    • Go to Preferences | Advanced | Miscellaneous, click Open calibre configuration directory.
    • Open the plugins folder.
    • Delete iOS reader applications.json.
    • Delete the iOS_reader_applications_resources folder.
    • Restart calibre.

Paypal Donations:Version History:
Spoiler:

Version 1.4.7 - 23 March 2015
• Very minor update without functional changes, normal archive size again.
• First release since 1.4.3 that's properly tagged and released on github, too.

Version 1.4.6 - 1 January 2015
• Support for iPad Air 2 and iPad Mini 3

Version 1.4.4 - 3 October 2014
• Support for iPhone 6 & 6 Plus

Version 1.4.3 - 2 September 2014
• Support for Calibre 2.x, thanks to Davidfor for contributing most of the code!
This fixes the following GitHub issues:
#112
#105
#111
#110
#106
#104
• Metrics logging has been disabled as the server is down.
• The link to this thread in the Help file has been updated.
• The link to Marvin XD in the Help file has been updated.

Version 1.4.2 - 31 August 2014 - no public release

Version 1.4.1 - 15 June 2014
• PDF support added for the Kindle application, fixes GitHub issue #86
• Bug fix for github issues #87 and #89
Version 1.4.0 - 17 May 2014
• Added support for GoodReader 4
• Improved load times, general improvements for all supported reader applications
• Fixes GitHub issues #79 and #81 affecting Marvin users
Version 1.3.8 - 14 April 2014
• Fixes issue #75 affecting GoodReader and Kindle users. Books with double quotes in title caused errors
• Added configuration switch to enable iBooks under OS X (10.9) Mavericks and later
Version 1.3.7 - 06 April 2014
• Fixes issue #71 affecting Marvin users
Version 1.3.6 - 27 March 2014
• Marvin: Cache device information for much faster startup times
• Improved diagnostics and logging of plugin metrics
• General code polishing
Version 1.3.5 - 7 March 2014
• Marvin: Add support for Ratings metadata, Locked books
Version 1.3.4 - 4 January 2014
• Fixes issue #61
• Fixes issue #62
Version 1.3.3 - 2 January 2014
• Fixes issue #60
Version 1.3.2 - 28 December 2013
• Fixes issues #57, #58
Version 1.3.1 - 23 December 2013
• Added support for additional iPhone 5c
Version 1.3.0 - 10 December 2013
• Added support for multiple libraries
• Updated Help file
Version 1.2.6 - 4 December 2013
• Added support for iPhone 4 (Verizon)
• Changed polling order for Marvin: Universal, Free, iPad
Version 1.2.5 - 23 November 2013
• Added support for iPhone 5C (Softbank)
Version 1.2.4 - 15 November 2013
• Added support for iPad Mini Retina LTE
Version 1.2.3 - 14 November 2013
• Added support for iPad Mini Retina WiFi
Version 1.2.2 - 1 November 2013
• Added support for iPad Air
• Remove support for iBooks under OS X 10.9 (Mavericks)
• Various improvements
Version 1.2.1 - 25 September 2013
• Added support for iPhone 5S (Telstra)
Version 1.2.0 - 21 September 2013
• Added Kindle for iOS as supported reader application
• Added support for iPhone 5S (AT&T)
Version 1.1.2 - 18 September 2013
• Add support for iPod touch 5G
Version 1.1.1 - 14 September 2013
• Fixes issue #18
Version 1.1.0 - 13 September 2013
• Adds support for Marvin 2.0
• Requires calibre 1.0 or later
Version 1.0.5 - 24 July 2013
• Add support for iPad4 GSM (ME401LL/A)
Version 1.0.4 - 1 July 2013
• Add support for iPad4 GSM (Telstra), require calibre 0.9.37
Version 1.0.3 - 24 June 2013
• Add support for iPad2 CDMA (Verizon), improved Windows/GoodReader error handling
Version 1.0.2 - 21 June 2013
• Add support for iPad Mini cellular (LTE Rogers)
Version 1.0.1 - 21 June 2013
• Add support for iPad Mini cellular, iPad 3 CDMA, fix xml parsing error
Version 1.0.0 - 20 June 2013
• Initial release
Attached Files
File Type: zip iOS reader applications.zip (247.0 KB, 43072 views)

Last edited by Philantrop; 06-30-2017 at 12:07 PM. Reason: Plugin blacklisted in Calibre.
Philantrop is offline   Reply With Quote