Discussion Forums  >  Plugins, Customizing, Source Code

Replies: 3    Views: 53

MadRod
Aspiring developer
Profile
Posts: 1845
Reg: Apr 12, 2012
Lisbon
27,850
12/05/18 03:57 AM (1 week ago)

Does the Core work with IOS 12?

Hey guys, does anyone know if the core we download from self server creates a bundle that will run with the latest Xcode?

Do the plugins on the market, like Ultimate Screen Creator still work?

Thanks
 
tompos
Veteran developer
Profile
Posts: 99
Reg: Oct 19, 2013
Würzburg
7,090
like
12/12/18 10:02 AM (4 days ago)
Hi,

some months ago I updated an older app... and was not too successful with my self-hosted source code because of many deprecated procedures.

So I decided to build a skeleton on my main buzztouch.com account with the main plugins I used in this app. After downloading the source code I copied the JSON data from my self-hosted version to this downloaded version. This had the advantage of having the core (at least more) up-to-date than my self-hosted version. The main job for me had been to include some adjustments that I had made to different original plugins in the older version and bring them over to the new code (I usually modify much to much...). Finally, this worked fine and the app works fine under iOS12 and was accepted by Apple rather quickly. I don't know, however, how many iOS updates this will survive...

Best wishes
Thomas
 
MadRod
Aspiring developer
Profile
Posts: 1845
Reg: Apr 12, 2012
Lisbon
27,850
like
12/13/18 02:46 AM (4 days ago)
Thank you.

So the core at buzz touch is ok but some plugins will still need updating....

Thanks
 
tompos
Veteran developer
Profile
Posts: 99
Reg: Oct 19, 2013
Würzburg
7,090
like
12/13/18 03:54 AM (4 days ago)
Yes, exactly.

you have to do some minor modifications for many plugins. E. g., I purchased quite a bunch of plugins when the plugin market was not only open, but also filled with plugins of all qualities ;-). Most of these plugins are no longer available in the plugin market and when you download the source code of an app that contains those "outdates" plugins, you receive a message like "The author of this plugin has not updated the source code..." in the plugin-file. No code. What I successfully tried was to copy the source code of these plugins from an older version (including all files .h, .m, .xib) over to the new version.

The "minor updates" are mainly due to the fact that the appDelegate is handled differently. In earlier versions of the code there were lines of code like (for my app "syna")

//appDelegate
syna_appDelegate *appDelegate = (syna_appDelegate *)[[UIApplication sharedApplication] delegate];
if([appDelegate.rootDevice isIPad]){...}

which was a bit complicated. Now a global variable appDelegate is defined in a header file

//global appDelegate reference...
#define appDelegate ((syna_appDelegate *)[UIApplication sharedApplication].delegate)

... and from now on you can simply use this variable globally in any plugin code like this
if([appDelegate.rootDevice isIPad]){...}

This is clearly better... but has the consequences that you have to remove all these lines of code

//appDelegate
syna_appDelegate *appDelegate = (syna_appDelegate *)[[UIApplication sharedApplication] delegate];

... when you copy "old plugin" source code to a new project. But it is straightforward and after some minutes your are done with that problem.


More complicated modifications have to do with more substantial changes to a plugin. E. g., I modified the .xib- and .m-files for the QR-Code-Reader plugin from Chris in many ways. I wanted to display the scanned code below the button etc. If such a plugin is no longer available in the market then you simply use your modified version... you should be fine. If the plugin still exists in the plugin market... ok, then you have to compare the new code and your old (but modified) code and merge your changes into the new code. Many BT members will not have touched the plugin source code at all, so this entire paragraph may not be relevant for them. Just in case...

I hope this clarifies these processes... in summary it is worth trying, and if you are stuck, just send me a message.

Happy coding!
Thomas
 

Login + Screen Name Required to Post

pointerLogin to participate so you can start earning points. Once you're logged in (and have a screen name entered in your profile), you can subscribe to topics, follow users, and start learning how to make apps like the pros.