Aug 11th 2017 ** MAJOR UPDATE ** Added image attachment feature for Questions: now you can add an image while posting a Question. So I've edited the following things: • Added an attachmentButton UIButton into the QuestionCell in Storyboard and in its class in the Home.swift file • Edited the Home.swift and Search.swift's cellForRowAtIndexPath() methods to hide/show the attachmentButton, added the necessary code to upload an image while submitting a Question and to handle image upload • Added the attachmentButt() function to see the attached image in fullscreen in Home.swift and Search.swift, and edited some other code in both files • Added an extra controller called ImagePreview and its relative .swift file • Added an attachment_butt and add_attachment_butt Image Sets in the Assets.xcassets folder • Added these lines into Configs.swift: let QUESTIONS_IMAGE = "image" let QUESTIONS_HAS_IMAGE = "hasImage" • Moved 'queryQuestions()' from viewDidAppear() to viewDidLoad() • Removed the refreshButton in the Home controller and its code in Home.swift -> replaced it by a refreshControl() • Added an extension in Configs.swift to round large numbers into K or M abbreviation, and edited the likes and answers amount lines in Home.swift and Search.swift -> cellForRowAtIndexPath() IMPORTANT: IF THIS IS AN UPDATE FOR YOU, then you must of course compare your old project files with the updated one of this version, then, after updating your own project, run the app and submit a test question in order to make the app create an extra column in your Parse Dashboard -> Questions class called "hasImage". Then you must enter that class in your Dashboard and set all the empty cells of the "hasImage" column as False. This is a one-time job, you won't have to do that anymore, the app will handle it. • Changed the App Icons in the Assets.xcassets -> AppIcon folder
Jun 1st 2017 • Edited 'imagePickerController()' method in EditProfile.swift in order to resize the avatar image
Feb 10th 2017 • Added 3D Touch code in AppDelegate.swift: quickly open the Search and Account controllers and share the app via 3D Touch on the app's icon (only for supported devices) • Added some code into Home.swift and Answers.swift files, into their reportButt() methods, in order to let users choose to report either a user or his/her question/answer, accordingly to the new EULA terms from Apple. So now when you report a User, the app will automatically flag all his questions and answers (if any) as reported, as well as the User. NOTE: You should daily check your Parse Dashboard for either reported users or questions/answers and take actions for it.
Feb 10th 2017 • Added some PFInstallation() code into the 'applicationDidBecomeActive()' function in AppDelegate.swift, in order to reset the app's badge icons to 0 • Updated the User Guide with a new link for the APN .p12 certificates creation tutorial
AskIt is a Universal App Template where you can post any question and have users answering, you can do the same on other user’s questions. Users can also like questions from the Home screen, or search for something in the Search screen.
Since its backend is by Parse SDK you don’t have to buy any domain/hosting, there are NO php files to upload to a web server so you’ll save some money for sever side, also because back4app offers a generous free plan.
AskIt is a native XCode project, Swift language, Storyboard, Universal, Push Notifications for likes and answers, super easy to customize, backend with Parse SDK hosted on http://back4app.com
About Parse SDK and back4app
Read this article for more info about back4app and Parse SDK: https://hubpages.com/technology/Parse-SDK-will-not-shutdown-in-thanks-to-back4app
Can I host Parse Server on my own server?
Yes, although I don’t provide support for the setup process, you can read the official Guide here: http://parseplatform.org
I get a Code signing error in Xcode 8.x
That’s a bug of Xcode 8 with macOS Sierra, check this sample video to see how to fix it: https://youtu.be/z2LemT1_LqA
How to remove AdMob banner ads
Check this video out to see how to remove the code that shows AdMob banners: https://youtu.be/e-HQYnta2Jg Keep in mind that you must repeat the shown steps for every .swift file that contains this line on the top:import GoogleMobileAds
What about free support for this template?
I can offer free support for bugs encountered in the original code. Instead, if you’ve edited the code and messed something up with it, I may apply some fee to fix it either via TeamViewer or by checking your app project files directly on my computer.
Should I use the latest version of Xcode to edit this template?
Yes, I always update my apps to the latest version of the IDE.
- XCode 8.x project – Swift – 64bit
- iOS 8/9/10+ – Universal – Storyboard
- Admob banners
- Facebook login
- Post/answer/like questions
- Attach an image to your Questions
- Works with Parse SDK hosted on back4app
- Push Notifications for likes and answers
- Report abusive contents (questions or answers)
- Search for questions by keywords
- PDF User Guide and PSD included
- Easy to customize | Well commented code
- Apple Mac with its latest OS version installed
- The latest version of Xcode and some knowledge about its UI interface
- Photoshop or any other image editor software
- An Apple Developer account to submit apps to the App Store
- An AdMob account to generate your own banner UNIT ID
- A free account on back4app.com
Have fun with AskIt, and don’t forget to rate it on your Downloads page!
We’ve recently found out that some developers have bought our app templates, reskinned them just a bit and put them on sale on other source code markets similar to CodeCanyon, saying that they developed and own such source codes.
That is a serious copyright infringement, developers who buy our templates are allowed to reskin and sell them as apps on the App Store (accordingly to the License type they’ve purchased a template for), but are not allowed to put our original source codes for sale on source code markets, including CodeCanyon. We will report developers who made copyright infringements to the competent authorities. Thanks.