BYAManager is a personal project that i realized in 2011 and updated more times during the years. It's a Multi-Platform and Multi-Language software dedicated to the "Apple World", that i developed for the blog called BiteYourApple.
This software is a GUI to download iOS firmwares and iTunes versions with some extra features.
It's legal, obviously, because all files are on Apple server. BYAManager gets files directly from Apple server to you.
It's available in 3 languages: ITALIAN, ENGLISH and CZECH
The entire list of features is available HERE.
BYAManager uses BYAUpdater to update itself automatically!
I presented this software in 2011 HERE
Attention!!! I started this project on assembla.com with SVN. The source code and the commit's list are in Assembla in a private repository. This isn't important, because the code here on GitHub is better.
I'm working on a Python script to sort the ipsw's links in the database.
This project is available HERE.
In the future, i want to integrate this script in BYAManager.
This software requires Java 8 or above and an internet connection
GOOD NEWS: I moved BYAManager to IntelliJ and removed Project Lombok as a dependency (because quite obsolete today)
ATTENTION: I'll never fix issues about the Graphical Interface, because i want to recreate the entire GUI with different technologies in the future.
I found two terrible bugs related to iOS10. For more info GO HERE
The complete list IN ITALIAN is available HERE
- ??/??/???? - BYAManager 1.1.0 SCHEDULED BUT STILL UNRELEASED (do a 'git checkout master')
- 09/17/2016 - BYAManager 1.0.1 DOWNLOAD HERE and public release HERE
- 04/11/2015 - BYAManager 1.0.0 DOWNLOAD HERE and public release HERE
- 04/10/2015 - BYAManager 0.9.0 DOWNLOAD HERE and public release HERE
- 04/06/2015 - BYAManager 0.8.0 DOWNLOAD HERE and public release HERE
- 04/03/2015 - BYAManager 0.7.0 DOWNLOAD HERE and public release HERE
- 04/02/2015 - BYAManager 0.6.0 DOWNLOAD HERE and public release HERE
- 03/30/2015 - BYAManager 0.5.6 DOWNLOAD HERE and public release HERE
- 03/29/2015 - BYAManager 0.5.5 DOWNLOAD HERE and public release HERE
- 10/21/2014 - BYAManager 0.5.4 public HERE
- 09/29/2014 - BYAManager 0.5.3 public HERE
- 04/06/2012 - BYAManager 0.5.2 public HERE and HERE
- 04/05/2012 - BYAManager 0.5.2 RC1 public via Twitter and auto-update
- 03/28/2012 - BYAManager 0.5.1 public HERE and HERE
- 03/19/2012 - BYAManager 0.5.0.0 public HERE
- 03/19/2012 - BYAManager 0.5.0 RC2 public via Twitter and auto-update
- 03/19/2012 - BYAManager 0.5.0 RC1 public via Twitter and auto-update
- 03/19/2012 - BYAManager 0.5.0 beta 1 only for 3 beta testers
- 03/13/2012 - BYAManager 0.5.0.0 Beta5 only for beta testers
- 03/09/2012 - BYAManager 0.5.0.0 Beta3 only for beta testers
- 02/24/2012 - BYAManager 0.4.1.0 (or 0.5.0.0 Beta2) only for beta testers
- 01/06/2012 - BYAManager 0.4.0 (or Beta 4) public HERE and HERE
- 12/28/2011 - BYAManager Beta 3 public HERE and HERE
- 10/24/2011 - BYAManager Beta 2 public HERE
- 10/10/2011 - BYAManager Beta 1 public HERE
- 10/03/2011 - BYAManager Beta 0.3 private
- 08/04/2011 - BYAManager Alpha 4 private
- 07/31/2011 - BYAManager Alpha 3 private
- import this maven project into IntelliJ Idea 2016 or higher
- Create two maven configurations, with these 'Command Line' values:
- clean install
- assembly:assembly
####You can:
- download files via http and https, also with BYAManager in background (minimized)
- download one or more files at the same time at full speed (Download Accelerator), with multiple processes to bypass server's limitations
- play/pause/stop/cancel downloads, using a list of available iOS Firmware and iTunes versions in a local database
- enable/disable sha1 check (enabled by default)
- search new BYAManager's versions or new database's versions
- change settings, for example: path of the download folder, proxy, measurement unit, language, buffer size, notifications, and so on
- restore settings to default values
- open the download folder, directly from BYAManager
- re-download files in the list directly in the browser, or in other programs
- control some important features running BYAManager via Command Line with a complete tutorial executing "BYAManager.jar help"
- move a completed download into the iTunes folder (only on Mac and Windows) to be able to update/restore your device from iTunes without re-download the file ".ipsw".
####BYAManager:
- checks and updates itself automatically every 24 hours, with BYAUpdater
- checks and updates automatically the databse every 24 hours
- downloads files at full speed using multiple process
- checks the integrity os a file with hash algoririthm (SHA1).
- tries to restore incompleted/damaged files, during the startup of the program
- checks if a file has been downloaded before
- logs every actions in a file called BYAManager.log, near the executable
####Functionalities
- Add a pattern to the sha check
- Improve the logic to check the free space on the disk
- Dinamically update the list of available firmwares and iTunes versions, without the requirement of "restart BYAManager to apply".
- Add social networks integration: Twitter, Facebook and so on
####GUI
- Create a new modern GUI to release BYAManager 2.0 (NOT IN SWING, but with other frameworks, like JavaFX)
- Create a custom GUI for the popup in the system tray
- Add in the GUI some informations to help the user to understand the state of every process
- Add the donate button in the GUI
BYAManager splash screen
-
Choose the tab "iOS" or "iTunes" and select the correct version
-
Click on "Download" to start (this action will create 4 different temp files in a directory, because every file represents a connection to accelerate download's process)
-
When this process will complete, BYAManager merges all parts in one file
-
When merging process will complete, BYAManager starts to check the SHA1
-
If the SHA1 of the downloaded file is equal to the SHA1 in the DB, this download will complete and his file will be available
You can download multiple files at the same time using the entire bandwidth:
You can use the menu bar to check if there are new versions of this software or the db
You can use the menu bar to pause/resume/cancel a selected download in the table
Or, you can click with the secondary button of the mouse on the table's row to choose pause/resume/remove's items.
If you're downloading multiple files, you can pause/resume/stop all this files with only one click on buttons in the menu bar.
SHA1 check is very important to check the integrity of the downloaded file, but if you want to disable this feature, you can click with the secondary button of the mouse on the table's row to choose "Disable SHA-Check".
In the popup menu on the table's row, there are other options, like an item to download a file in the browser or to show the download's folder.
If you click on the third button in the menu bar you can change BYAManager's settings.
If you change something, you must restart BYAManager.
You can change the language without problems, but to modify the buffer size you should be an expert user.
Please don't change these options, because are very useful ;)
In this section you can set a proxy to download files. Attention, you must use a server with port 8080. Also, you should check the speed of this server, because BYAManager requires a very large bandwidth to download files. This is an advanced options, only for expert users.
If you close BYAManager, a dialog like this will appear:
If you choose to remove future notifications, this dialog won't appear.
To close definitively BYAManager, you can choose from the menu "File" -> "Exit", or from the tray icon using the item "Close"
When you are on MAC OS X or Windows, you can move downloaded files directly in the firmware folder of iTunes by clicking on the "Move" button in the table's row. In this way, iTunes doesn't require to download this file another time.
If you are downloading an iTunes setup file for your operative system, when download's process will complete, you can click on the "Execute" button in the table's row to start the installation process.
This function is available only for Windows and MAC OS X, because iTunes for Linux isn't available.
BYAManager's update or DB's update are notified in this section of the GUI.
But, everytime that you start BYAManager, it checks if there are new versions. If yes, BYAManager apply automatically this updates, but after this process you must restart this software.
To update itself, BYAManager uses a software called BYAUpdater, available HERE
If you start BYAManager via Command Line/Terminal in this way: java -jar BYAManager.jar , you can pass parameters like these:
- 'help' to open the help
- 'port-xxxxx' to change the network port. Use an integer >=10000 and <20000
- 'reset-all' to factory reset this software
- 'delete-download-temp' to remove only temp files
- 'update-db' to remove the database
- 'update-software' to check and install the latest version of BYAManager
- 'sort-firmware-db' sorts links in the firmware's database - BETA (ONLY FOR EXPERT USERS)
- MAC OS X: /Users/"user folder"/Library/ByaManager
- Windows: C:\Users"user folder"\Library\ByaManager
- Linux: /Users/"user folder"/Library/ByaManager
- MAC OS X: /Users/"user folder"/Downloads/ByaManager_Downloads/temp
- Windows: C:\Users"user folder"\Downloads\ByaManager_Downloads\temp
- Linux: /Users/"user folder"/Downloads/ByaManager_Downloads/temp
- MAC OS X: /Users/"user folder"/Downloads/ByaManager_Downloads/temphttps
- Windows: C:\Users"user folder"\Downloads\ByaManager_Downloads\temphttps
- Linux: /Users/"user folder"/Downloads/ByaManager_Downloads/temphttps
No connection
Unknown error, probably the connection with the server isn't working
This version is no longer supported, please download the latest version
- HTTPS support: at the moment, this is only an expetimental feature. There are some problems. I'll fix bugs and missing functionalities in the future.
- Endys111 for the Czech translation
- Anatoli Nicolae for GUI of the Splash Screen and the toolbar
- BYA staff for the support
Copyright 2011-2015 Stefano Cappa
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
**Created by Stefano Cappa**