Monthly Archives: February 2016

Methods Of Mobile App Testing: A Guide For Developers

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

Mobile app testing tips

 

The total number of app downloads has been projected to touch 275 billion by the end of 2017. Competition among app developers to grab the attention of a significant chunk of smartphone-users with their applications is fierce – and there is hardly any room for errors. A mobile app with bugs is destined to fail (if it is at all approved at the App Store, that is), and researches show that 6 out of every 10 people give an average of three minutes to see whether an app loads correctly or not. In such a scenario, the importance of thorough mobile app testing is paramount, and in today’s discussion we shall highlight some key methods of testing applications:

 

  1. Mobile testing and app testing – Unlike what many newbies think, there’s a significant difference between ‘mobile testing’ and ‘mobile app testing’. The former refers to testing the features of the actual devices (e.g., screen resolution, wi-fi, Bluetooth connectivity, battery performance, etc.) The latter, on the other hand, is the checking of custom installable third-party applications created by developers. That is what we are dealing with over here.
  2. Functional and non-functional testing – Before getting down to what aspects of an app should be tested, developers need to understand the difference between these two well. Functional testing is extremely essential for native applications – and it covers a whole array of things, right from compatibility with different devices (thanks to the extreme fragmentation of the Android platform, it’s a big challenge here) to the browser compatibility of web apps. The speed, security, mobile data consumption, and related stuff come under the purview of non-functional testing. For risk-based testing of mobile apps, depending only on simulators is not a good option – and that’s precisely why most mobile app companies prefer checking out their software on actual devices. With the growth of wearable technology and apps for these gadgets (e.g, apps for Apple Watch), a whole new layer of testing challenge is getting added.
  3. Backward compatibility of apps – Not everyone uses iPhone 6 Plus or Android 6.0 Marshmallow devices. Mobile app development experts have to take a call on the degree of backward compatibility (i.e., support for older versions of the mobile platforms) that they should add to their applications. Most iPhone applications reach back to iOS 7 in terms of compatibility, while some are even supported on older, iOS 4 handsets (there is no definite pattern for this on Android, although the oldest supported version for most apps is Android 2.2 Froyo). Creating an app only for iOS 9 or Android 6.0 is not advisable – since that inevitably limits its overall reach.
  4. Installation and login – Let’s put it this way – why would anyone bother wasting time on an app that cannot be downloaded at one go from the app store? After the download, users should also be able to easily sign in/sign up on the applications. Testers have to install/uninstall and create accounts of applications on devices (emulated devices/simulators won’t do the trick here), and make sure that there are no glitches on this count.
  5. Checking app performance under different network speeds – There is simply no way to correctly guesstimate what the network connection speed of the users’ devices would be. There will be people using apps on Wifi-activated devices, some will be using 3G mobile data – while there will be a fair number of 2G (and there is the EDGE/GPRS/CDMA fragmentation here) users as well. The performance of an app should not be affected by the network speed of the devices it is installed in. What’s more, most apps and games should be usable in offline mode as well. It’s all about maintaining high app-engagement levels.
  6. Interruptions – Developers should never make the mistake of thinking that using their apps would always be an interruption-free experience for users. While working on an application (or playing a game, for that matter), a call can come in, a text message can be received and other notifications can be generated on the device. It is important to note how the app that is being tested behaves when such ‘INTERRUPTIONS’ happen. These interruptions can also happen when an app is being downloaded or upgraded. Ideally, the app should work parallely/get automatically paused during interruptions.
  7. Cloud Testing and Beta Testing – Both are vital for testing iOS/Android applications. App testers can use a web-based testing environment to deploy apps, and identify possible bugs and issues in them. This is the essence of cloud testing, and it is a great technique for saving time and shortening the overall development cycle (with every developer focusing on agile development, this matters BIG). Availability of real-time test results, support for complicated apps and high-end scalability feature among the other advantages of cloud testing. Beta testing, on the other hand, is all about an actual core group of testers and real devices. This method creates a real-world testing environment for new apps, which cannot be obtained on simulators/virtual devices.
  8. The privacy factor – Any Android or iPhone app development expert who knows his/her job would be aware of the growing importance of mobile app security. With platforms like Apple Pay and Android Pay growing in adoption rates, users are understandably sceptical of using any app for financial transactions that do not provide complete security and data confidentiality/protection assurance. Security is also a big factor for all the new-fangled social networking apps mobile apps for kids that are released every quarter. For apps that support m-payments, speed is also a critical issue.
  9. Effect on device battery – Neither Apple nor Google has yet been able to really crack the battery-performance puzzle of smartphones (although the latest versions of the mobile platforms do offer just that extra bit of battery juice). On top of that, if an app causes excessive battery drainage, its developers can pretty much kiss the chances of its being successful goodbye. It is the responsibility of mobile app testers to make sure that installing and using an app does not put any extra pressure on the battery of a device. An application needs to be tested in high, low and critical battery conditions, as well as when the handset is being charged (certain apps tend to eat up more battery during charging). Since most average users do not bother actually closing apps after usage, testers also need to check how device battery is affected when apps remain running in the background.
  10. App interface testing – The success (or otherwise) of an app hinges crucially on how easy (or otherwise) it is to use. There is a reason why app development companies have separate teams of graphic designers and animators and UI/UX designers to manage the visual appearance as well as the in-app navigation of mobile applications. Prior to release, it has to be tested whether all the menus, tabs, bookmarking options and other settings are working properly. An app may have powerful features – but unless users find it easy to use, popularity levels will remain low.
  11. Memory consumption and usage – We have already done a piece on how smartphone users can free up memory space on their handsets. Memory consumption/usage is a key aspect of mobile app testing as well. Apart from the size of an app (big apps should always be moved to SD cards), the general memory usage (RAM) patterns of applications have to be monitored closely. In most instances, there will be a difference in the memory usage when there are only a few apps installed, and when the phone memory is almost full. Just like battery performance testing, memory consumption when an app is active and when it is in the background also have to be tested.
  12. Form factor testing – Platform and device fragmentation aside, form factor is yet another important (and curiously, often-neglected) aspect of testing mobile applications. Many new app developers make the folly of releasing the same version of an app for smartphones and tablets – and unsurprisingly, the results are disastrous. When the same app is targeting different devices in the same platform (iOS or Android), developers have to create separate form factors of the app, to ensure error-free viewability on different devices. Once again, the growing popularity of wearables have added an extra dimension to form factor testing for apps. The more smart devices vary, the greater is the challenge!

 

Screen rotation (for apps that support it; mostly gaming apps) would also figure among the top points to consider during app testing. Testers generally prefer creating a ‘Debug Build’ (a build with logs) to test apps and document reports. iOS app developers have to follow the Apple guidelines carefully, while for Android apps, tools like TaskKiller, DDMS and Monkey Tool can be utilized. In case of a battery exhaustion or an accidental device shutdown, there should be a proper, full backup/restore option. It is impossible to overstate the importance of mobile app testing in today’s scenario – unless the testers know what they need to do and do their job well, all the hard work of coders and designers can go down the drain.

Top 15 Mobile Self-Help Apps That You Can Use

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

best self-help apps of 2016

 

Personal trainers and motivators can now take a backseat. Individuals no longer need to step out and attend seminars and lectures to get inspiration. An all new, and much more convenient, set of tools have emerged – which allows people to get the precise form of self-help and motivation that they need, right from the comforts of their home. That’s right, we are talking about the many mobile self-help applications available for download at the app stores. We here highlight some of the best self-help applications in 2016:

 

  1. Operation Reach Out – A brilliantly conceived app that effectively counters all forms of suicidal thoughts and such depressions. As the name of the app suggests, it allows people having such thoughts to reach out and connect with others, gather happier, counteractive thoughts, and gradually grow out of the problem. Created by Guidance Group Inc, Operation Reach Out is a free iPhone self-help app, compatible for all devices running on iOS 4.2 and later versions. A really handy app to have.
  2. Happier – Bringing a smile to the users’ faces – that’s what the Happier app (for iOS 7 and above) is great at doing. The application is all about sharing and viewing old pictures and even notes – anything with a hint of nostalgia, that usher in positive thoughts and vibes to the mind. Whenever someone is feeling a bit down, (s)he can use the app – and feel an improvement in his/her mood within a matter of minutes. Happier Inc. has also made a version of this app for Apple Watch. More ‘yay’ for tech-savvy users!
  3. Steps AA Companion – For those with alcohol addiction issues, this paid iPhone app works like a true companion. Available for iPhone, iPad and iPod Touch (upgraded to iOS 7.0 or later versions), this app is targeted towards all Alcoholics Anonymous members. Right from motivational prayers and promises (particularly useful for getting new hopes and mental fortitude), to the multi-featured ‘Big Book’ (contains 164 pages) and a cool ‘Sobriety Calculator’ – the Steps AA Companion app by Dean Huff has it all to help users gradually move away from their harmful addictions.
  4. I Can Be Anything – One of the most comprehensive, and certainly the most unique self-help app on this list. I Can Be Anything, or ICBA, is a suite of 12 applications – each available for download via in-app purchase, and customized to address different self-help needs of individual users. The sessions are prepared in the form of audio narrations, voiced over by developer Jacob Strachotta himself. ‘I Can Be A Sound Sleeper’, ‘I Can Be Free’ and ‘I Can Be Confident’ are some of the sessions in the ICBA application (by Human Progress). Apart from iPhone, iPad and iPod, this app can also be used on Apple Watch. What’s more, users can send requests for additional sessions directly to the ICBA team. Several prestigious app awards bear testimony to the benefits and effectiveness of the I Can Be Anything application.
  5. Emotionary – Optimized for the iOS 6.1 and later versions of the Apple mobile platform, Emotionary is a breakthrough iPhone self-help app to build emotional intelligence and related vocabulary. The 5 basic emotions are used in the app to find and display a myriad of feelings – neatly sorted in different categories. Users can choose from a well-stacked gallery of emoticons (100+), and have the option of creating their very own emoticons as well. Creating and sharing ‘emotional selfies’ with friends adds that elusive touch of humour that many other personal improvement apps lack. Emotionary is created and released by Funny Feelings – and it makes the task of expressing oneself on the digital domain easier than ever before.
  6. Lifetick – For youngsters (or even older people, for that matter), this self-discovery and motivational app is an absolute delight. The advantages of using the Lifetick application are two-fold: firstly, through the app, users can actually realize their true identities and values, thereby bolstering their self-esteem. Secondly, small tasks and targets can be set on the app, and completion of each brings with it a sense of fulfillment. Many people are unsure of what their life goals are and seemingly lose control of how their lives are panning out. The Lifetick personal companion app has been developed to help them…bring their lives back on track.
  7. ConversationBuilder – This mobile app for kids by Mobile Education Store LLC has a price tag of $24.99 – but its excellent features and advantages make the app worth every bit of its download price. ConversationBuilder is of great help in removing the initial shyness and uncertainty in young children, by presenting conversations visually on the app screens. Learners gradually get an idea of how they should interact with peers, and what the general flow of social conversations should be. There are as many as 160 conversations built-in inside the app, which works on iPhones and iPads upgraded to iOS 7.0 or later versions.
  8. Beeminder – A self-commitment app with an innovative touch. Beeminder has earned plaudits from mobile app developers and general users alike, and is available on both the iOS and Android platforms. Users can easily set up different personal goals (fitness training, finance, health, learning) on this free app – and the progress on each count is tracked on the ‘Yellow Brick Road’. Users of the Beeminder mobile self-monitoring app get that extra bit of motivation to stick to their targets – for if they deviate, they will have to cough up money (starting from $5). Real money!
  9. PTSD Coach – Created by the US Department of Veteran Affairs, PTSD Coach is a very handy mobile tool for addressing post-traumatic stress disorder problems. Even people who are currently undergoing treatment can benefit from downloading and regularly using this application. There is a ‘Distress Meter’ in the app, where people can rate their PTSD on a ten-point scale. There are options of self-assessment, and audio files for day-to-day stress management (with positive imagery). Anger-management and relaxation are some of the other things that the PTSD Coach app helps users with.
  10. Lumosity – Wish to exercise your brain a bit, and have a whole lot of fun while you are at it? If yes, the Lumosity app is just the thing you would love to have on your iPhone/Android handset. Nearly 30 highly engaging cognitive games are included in the app – focusing on different activities of the brain, right from alertness and speed, to concentration and problem-handling capabilities. As in any mobile mind game app, the challenges grow progressively harder. Meet daily targets, compare your ‘Fit Test’ results with that of others – and become a sharper, more intelligent person!
  11. MoodTune – This mobile stress-reliever app allows users to gradually increase the average activation levels of the brain. That, in turn, removes depression, anxiety and other such troublesome mental problems. The app developers have created separate versions of MoodTune for Android and iOS devices. Advanced studies and researches on neuroscience have been used to sketch out the idea behind this app – and it’s hardly surprising that it has won rave reviews at many online portals.
  12. Ananda – Living In Love – Presented by Chopra Enterprises Corporation, Ananda is one of the very best iPhone meditation apps currently available at the Apple App Store. It runs on iOS 6.1 and later devices (iPhone, iPod Touch and iPad). The uniqueness of the app lies in its audio gallery – there is a whopping 484 meditation channels in all (22 tracks and 22 guided meditation sessions). Both the sound balance as well as the durations of the sessions can be personalized, adding to the convenience factor of users.
  13. 24 Hours A Day – There are as many as 366 daily inspiring messages (you guessed it, one for every day of the year) in this smartly designed iOS app for spiritual development. There are separate sections for displaying the ‘Thought for the day’ and ‘Message for the day’ on the app screens, and users can happily swipe along to view older messages. 24 Hours A Day has been named among the Best Alcoholism Apps (2014), and the app proves that regular meditation – even for a short time everyday – is very useful to moving away from addiction and towards sobriety.
  14. Habitual Free – Developing good habits and staying away from bad ones is vital for overall self-development over time. The Habitual Free application allows users to do just that. People can add habits, and put a ‘tick’ when a good habit is pursued and a ‘x’ when they cannot avoid falling prey to a bad habit. The app comes with powerful social media integration – and as a result, people can share their achievements with fellow-users with ease.
  15. Unstuck – Challenges are a part of life, and being successful is all about overcoming them regularly. This is where this iPhone/iPad problem-resolving app comes into the picture. The mobile app development team behind Unstuck has made sure that the app can actually analyse why users have got ‘stuck’ in any situation (maybe a relationship crisis, maybe an unreachable work target), provide ideas on how to get out of the problems, and even come up with effective tips and strategies for the purpose. It is a digital coaching app that helps users get out of sticky situations. All the time.

 

Panic Attacks is yet another highly useful iPhone relaxation app for getting out of anxiety and bouts of panic. For alleviation of depression and mood upliftment, the Optimism app proves useful. Smiling Mind is a well-conceived mobile meditation app for kids, for reducing stress and improving mental health standards. Self-help apps are fast gaining in popularity – and the above applications prove that they can indeed be of great help to users.

 

Freeing Up More Space On Your Mobile: 16+1 Easy Ways

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

Tips to increase storage area in mobile

“This app seems interesting, but I do not have any more space in my phone!”

“Let me take a photo…but first, let me delete a few older ones first!”

 

If you are a smartphone-owner, you have probably uttered stuff like these at some point of time or another. The more advanced a mobile, the more insufficient its memory space seems to be. Now, there is not much to be done about the (fairly significant) space taken up by System Files on Android handsets, or by ‘Other’ on an iPhone. However, you can certainly follow a few tips and tricks to clear up as much space as possible – to maintain the performance levels of your device. Over here, we deliberate on some of these ways:

 

  1. Don’t keep duplicate copies of photos (iPhone) – Do you use the Instagram app regularly on your iPhone? If yes, you are probably already aware that it stores two versions of each picture – the normal version, and the one which is filtered and cropped. You don’t need the former, and in order to stop saving it (and building up the clutter), go to the ‘Settings’ tab of the app, and toggle the ‘Save Original Photos’ to OFF. In the HDR mode of iPhones too, 2 versions (normal and HDR) gets saved. Make sure that you get rid of the normal versions of images.
  2. Use external microSD cards (Android) – Any professional Android app developer or device researcher worth his/her salt would agree that this is one of the smartest ways to prevent the device memory from filling up too soon. Most Android handsets still ship with microSD slots – and all that you have to do is purchase a SD card (16 GB or 32 GB; get a larger one if required), insert it in your phone, and move your apps, music and other stuff on it. Some applications even allow their cache information to be moved to SD cards.
  3. Remove older messages (iPhone) – There is no NEED to delete text messages from your iPhone (after all, the inbox of any decent smartphone cannot become ‘full’). Still, it would be a smart option to not keep every message forever. In particular, if you have a lot of picture messages, they take up a large space. Navigate to Settings – Messages – Message History – Keep Messages, and set up your messages to be auto-deleted after 30 days. Take a backup of your important messages, if required. Stay away from the ‘Forever’ option.
  4. Be stingy with your music and videos (iPhone/Android) – You love to capture videos with your iPhone 6, happily snap away on your premium Android smartphone…and all of these contribute to your phone memory becoming cluttered (a 1-minute HD video takes up close to 80 MB of storage space). The same goes for MP3 music files, each of which is, on average, 2.8-3 MB in size. The message is clear and simple: do not download too many music or video files on your phone. They will inevitably lead to your phone getting slowed down.
  5. Clear app cache (iPhone/Android) – To prevent battery drainage, all mobile apps should be closed (and not kept running in the background) – you probably know this already, right? What you might not be aware of is the need for deleting the cache data of an application after using it. To cite an example, if you play Candy Crush for 30 minutes or so at a stretch, about 5MB of cache data will be stored. At the end of every day, clear the cache of every app. It is unnecessary, and should be deleted regularly.
  6. Use Cloud Storage services (iPhone) – So, you really need to keep a large number of photos on your device? Do your handset a favour, and use a cloud service – like Dropbox or Google Plus – for this. Your photos will remain for as long as you like, without your device memory space getting all clogged up. Apple’s very own iCloud is also offers good storage options, and it is much more secure than before. You can access photos stored on the cloud on any time…why jam your phone memory for that?
  7. Utilize OTG USB storage (Android) – Not all Android smartphones support OTG (or, On-The-Go) – but if yours does, not using it would be a serious mistake. The OTG cable can be used to plug in third-party storage devices with your phone (like it’s done on computers and laptops). There are multiple card readers and USB ports on a standard OTG, ensuring that practically any type of peripherals can be connected with your handset. You will need to purchase an OTG adapter too, which is available online and at very competitive rates.
  8. Get rid of some apps and games (iPhone/Android) – This is, according to most general smartphone users and mobile app developers, one of the best ways to free up memory space on handsets. Take some time out to think whether you really need the long list of apps and games that you have downloaded and installed on your device (the average size of applications is 23 MB, and it shoots up to 60 MB for games). Delete the ones that you are not likely to use frequently, the ones that you had downloaded on a whim. On your iPhone, go to General → Usage → Manage Data, and find out how much space each of the iPhone apps is taking up. If ‘Music’ or ‘Photos & Camera’ is hogging too much memory, that’s an indication that you need to delete some photos/videos or MP3. Quickly.
  9. Be wary of Newsstand (iPhone) – Apple’s digital magazine subscription app is a nice one – but it has one serious drawback. For certain magazines (the ‘London Metro’, for example), it can store old issues, dating back to months and years. Experts from the field of iOS app development advise users to keep checking the Newsstand app, to find out whether it is unnecessarily storing old copies of any subscribed magazine. If yes, delete them immediately and clear up some space.
  10. Disable certain pre-installed apps (Android) – Android phones often come with several pre-installed applications, provided by Google, or the vendor, or by the network service provider. These take up a large amount of space, and in most cases, they cannot be deleted either (particularly if you are not willing to root your Android device). You can, however, salvage a large portion of the memory space they occupy – by selecting them, and then, tapping on the ‘Uninstall Updates’ and ‘Disable’ options. The rogue apps will disappear from the home screen, and most of the space they had been occupying would be freed.
  11. Compress photos and videos (iPhone/Android) – We have talked about deleting media content and storing them on the cloud. There is a third option available for managing photos and videos – and arguably, it is the easiest. All that you have to do is compress the files, which would reduce their sizes considerably, while having minimal or no effect on the quality of photos/videos. The option of compressing pictures and video files is available on both iPhone-s and Android phones.
  12. Do not keep too many Voicemails (iPhone) – Keeping a couple of voicemails on your iDevice is okay, but if you keep all the voicemails you receive in your phone – it won’t be long before the device flashes that dreaded ‘insufficient memory’ message. Select the visual voicemails that you want to remove, do a left swipe, and then tap the ‘Delete’ app. It’s an often-overlooked method of freeing up space on an iPhone…but it’s mighty effective.
  13. Clear the cache of your phone browser (iPhone) – Doing this is simple, and essential if you regularly use the Safari browser to access the internet from your device. Head over to Settings → Safari, and tap on ‘Clear History and Website Data’. All the accumulated web history information in the browser cache will be deleted, and Safari will become just a tad faster too.

Note: Check if too much of offline data has accumulated from your browser (e.g., in Safari reading list). Remove the web pages that you no longer need.

14. Be careful with iBooks (iPhone) – iBooks in simple text format hardly take up any space, but the same cannot be said about the ones that have detailed pictures and graphic illustrations. iOS app development professionals also highlight educational/reference books as memory hogs – since many of them have embedded video files in them. Hence, the onus is on the user to periodically clear out his/her stock of iBooks and delete the ones that are no longer needed.

     15. Do not download every app (iPhone/Android) – Don’t be one of those typical ‘serial downloaders’. While browsing through mobile applications at the Apple App Store or the Google Play Store, do not simply download and install everything that catches your fancy. Check out the features of the apps you like, see their store rating and reviews, decide whether you would actually need them, and then take a call. If you do not have too many apps on your phone to start with, you won’t have to worry about deleting them later.

     16. Browse through ‘Other’ (iPhone) – The ‘Other’ section generally takes up a sizeable chunk of the overall memory space of your iPhone. It contains browsing, email and music data among others – and if any of the files here get corrupted, they start taking up even more space. To counter this, mobile app development experts recommend restoring the iPhone on iTunes (after, of course, taking a full backup). After completing the Back Up Now → Restore iPhone → Restore Backup procedure, you will find that the space taken up by ‘Other’ has become significantly lesser.

 

Bonus Tip: Doing a hard reset (Restore Factory Settings) is the last-resort option for freeing up memory space on smartphones. Of course, you will have reinstall all your apps after doing the reset.

 

As long as you are a smartphone-user, concerns about memory space will always be at the back of your mind. The above tips and suggestions can, however, ensure that you can free up quite a bit of space on your device easily.

 

 

Android Studio: 14 Tips To Get The Most From The IDE

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

A couple of months back, version 1.5.1 of Android Studio released, a few days after the first preview of v.2.0. The IDE, which comes with Gradle support, is already considered to be better, more user-friendly than Eclipse (with Apache Ant plugin) by most Android app developers. However, first time coders might find it slightly challenging to use the resources of Android Studio in the best possible manner. The following tips and pointers should come in handy:

  1. Adding a new file – This can be done directly from the ‘Project’ window. A new resource file (or a code file) can be added by clicking ‘Cmnd + N’ on a Mac system. For Android developers working on Windows systems, ‘Alt + Insert’ is the command to be given. Once the correct directory is chosen, the IDE prompts the user to specify the file type. In most cases, the .xml extension need not be provided.
  2. Viewing recent files – Android Studio makes it an absolute breeze for Android programmers to check out recently viewed and/or edited files in the code (something that cannot quite be said about Eclipse). Pressing ‘Cmnd + E’ (on Mac) results in a popup dialog box getting displayed – with a list of all the recently opened files. For viewing ONLY the list of recently edited files, the command is ‘Cmnd + Shift + E’. In both the cases, as you start to type, the results begin to get filtered automatically.
  3. Using the shortcuts – Code completion (initiated by ‘Ctrl + Shift + Space’) is only one of the various convenient keyboard shortcut options that the Android Studio IDE comes with. While working on Android app development projects, all documentations can be viewed by pressing ‘Ctrl + Q’, line indentations can be adjusted with ‘Ctrl + Alt + I’, breakpoints can be viewed (‘Ctrl + Shift + F8’) and toggled (‘Ctrl + F8’), and Live Templates can be implemented with ‘Ctrl + J’. There are many shortcuts for code refactoring, navigation in the IDE (files popups, symbols, classes, bookmarks, etc.), and for compiling & running codes (‘Shift + F9’ and ‘Shift + F10’ perform these functions). With Android Studio, it’s not surprising that the task of making a mobile app takes less time!

Note: There are different shortcut commands for ‘Basic Code Completion’ and ‘Smart Code Completion’ in Android Studio.

  1. Checking the Productivity Guide – This is a sort of extension of the previous point. The keyboard shortcuts mentioned above helps app developers save time – and with the help of the detailed ‘Productivity Guide’, a clear idea can be obtained about the benefit of these shortcuts. It is present under the ‘Help’ tab, and once launched, it throws up information on how many times a particular feature of the IDE (say, smart code completion) has been used, how much of typing has been avoided with the various shortcuts, and the bugs that have been avoided by using the shortcuts. What’s more, the ‘Productivity Guide’ lets new developers check out all the available features of Android Studio as well. In a nutshell, the Guide is all about tracking the usage of Intellij’s keyboard shortcuts.
  2. Extracting variables without refactoring – Particularly useful when developers are coding for Android apps on the fly. The ‘Ctrl + Alt + V’ (Windows) and ‘Cmnd + Alt + V’ (Mac) commands allows users to extract variables without going through the process of refactoring. The declaration is generated automatically by Android Studio, doing away with the need for manually typing the declarations. Suggestions are also provided for naming newly declared variables.

 Note: A similar resource (‘Cmnd + Alt + P’) is available in Android Studio for extracting parameters without refactoring.

  1. More efficient emulator in Android Studio 2.0 – Experts from the field of Android app development highlight the emulator in Android Studio as the one mediocrity in the otherwise excellent IDE tool. The Android 2.0 beta has shown that this complaint is likely to get resolved soon. The updated emulator is faster, easier, and more customized – with enhanced multi-touch support (important for app testing…particularly for those that have pinch-and-zoom features). On the toolbar of the new emulator, there are the ‘rotation controls’ – and they have been improved upon as well.

Note: To activate multitouch, long-press ‘Alt’, and click and drag the left mouse button. This zooms in on the point of reference.

  1. Preparing custom layouts – From previewing layouts while working on XML files, to including new widgets – the powerful ‘layout editor’ of Android Studio lets Android developers perform an array of necessary actions. Near the top of the ‘Preview’ window, there are options present to do different types of modifications, like changing the layout theme and adding preview device(s). Layouts can be viewed (from ‘Preview’) even while working in the ‘Text’ pane. To display or hide new widgets, the ‘Palette’ tab has to be clicked, while developers can also directly switch over to the graphical editor (with ‘Design’). ‘Preview All Screen Sizes’ is the command on the drop-down menu to check app layouts on several devices simultaneously.
  2. Displaying documentation on mouseover – Mobile app developers who have used the Eclipse IDE invariably vote in favour of this ‘on hover documentation display’ feature. The option is present in Android Studio as well, although here, it is disabled by default. The feature can be activated by browsing to File → Settings → Editor → General, and then, checking the box beside ‘Show Quick doc On Mouse Move’. Once the ‘Apply’ button is clicked, the documentations become visible on hover.

Note: Certain documents, on hover, show a time delay. That can be adjusted easily as well.

  1. Typing & editing JSON strings – On this IDE, Android app-makers no longer have to worry about managing the large number of backslashes, while typing out a JSON string in their app codes. The advanced ‘Language Injection’ feature of Intellij makes things a whole lot easier. It functions in a two-step process: first, the required fragments are edited inside the JSON editor itself, and then, the fragment is ‘injected’ in the form of ‘Escaped String’ inside the code. There are less chances of making errors here than ever before!
  2. Sending code content from the parent class or interface to the child – This, in other words, refers to ‘pushing down’ code content from the parent interface/class to a child interface /class. By clicking ‘Ctrl + Alt + Shift + T’ (Windows) or ‘Ctrl + T’ (Mac), mobile app developers can perform this task quickly, and without any risk of data loss. The same steps have to be followed for ‘pulling up’ content from child classes to a parent class. The moved content will become a part of the interfaces (in classes, the content gets removed altogether). The @override annotation is automatically added as well by the IDE.
  3. Working with images and ‘Code folding’ – Developers and mobile app designers can catch previews of images and/or icons at the time of referencing them inside the app code. The icons /images (in different densities) become viewable in the code margins. Details of asset resources can also be seen by pressing ‘F1’. On the other hand, ‘Code Folding’ is yet another developer-friendly feature in Android Studio – for optimizing the readability of app codes. Portions of the code can be selectively revealed or hidden, and classes can later be expanded to check for updates too.
  4. Testing and validating URLs – Yet another new feature that has been showcased in Android Studio 2.0 beta. The new version of the IDE has a built-in URL validator – that lets Android app developers test URLs and validate them without any problems. To check URLs in the IDE, programmers have to go to Tools → Android → Google App Indexing Test. The app indexing service in Android Studio ranks high on the reliability and stability counts.
  5. Changing the theme of the IDE – Not of direct help to app coding, but hey, a visually appealing IDE always gets brownie points. Android Studio wins big regarding this as well – thanks to the option to changing themes. External compatible themes (.jar files) can be downloaded and then imported by going to File → Import Settings. The IDE has to be restarted at this point, following which developers have to browse to Settings → Editor → Colors and fonts. Next up, the new installed theme has to be selected and applied.
  6. Showing line numbers – This feature is present in both Eclipse and Android Studio – although in the latter, it is even more easy to use. All that app developers have to do is navigate to File → Settings → Editor → Appearance. The box next to ‘Show Line Numbers’ has to be checked next. Line numbers can now be displayed inside the code.

For those only just starting out with Android Studio, the ‘Navigate’ menu is a great help. Methods can be extracted in the IDE with the ‘Cmnd + Alt + M’ command. Making changes to the code, either on the emulator or on devices, will become simpler with the ‘Instant Run’ feature of Android Studio 2.0. It’s not difficult to see why more and more app makers are moving from Eclipse to Android Studio – there are way too many top-notch features in the latter to be ignored!

 

Coming Soon From Team Teks…

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

The New Year has really started off on an interesting note for Teknowledge Software. We signed off 2015 with the start of our second branch in India, at Pune – and from the first week of 2016, we have been getting a large number of app project requests of varying nature. Our Android and iPhone app developers are currently working on 18 different projects. Several new apps are lined up for app store submission within the next couple of weeks. Here’s a lowdown of some of the latest mobile applications that we will be releasing soon at the Apple App Store (and Google Play Store, if applicable):

 

  • WordZee – This one is a fun iPhone word game, for users of practically all ages. The gameplay is simple enough: a few words are provided, and players have to find them from the given word maze. Where the WordZee app really stands out is its sheer excitement factor and the feel of competitiveness it brings on. Every mobile word search game comprises of 3 rounds (between the user and the opponent who joins) and the objective is to find all the words before the opponent manages to do so. Words can be selected by swiping horizontally, vertically and diagonally. Our graphic designing team has lent a lively, playful touch to the layout of this app, and it is currently in the testing stage.

“WordZee keeps things simple, and I believe that’s precisely what will make the app popular to all users. You have to find words from the maze, find them quick, and maybe learn some new words in the process too. It should be a wonderful game to brush up observational skills and, of course, general alertness levels.”

— Hussain Fakhruddin

  • RST – Another cool game with letters and words. RST is a unique mobile typing app – created for both the iOS and Android platforms. Players are given a small piece of text (3-4 lines; 90-100 characters) and an accompanying picture – and they have to type it (correctly!) before all the other competitors. Coins are awarded to winners, and with the accumulated coins – a user can enter the competition to win the attractive big prizes on offer. Interestingly, even those who do not manage to win typing games but at least finish the game within the stipulated time have the chance to earn coins. As per the advice from the client, we have included a feature via which users can win 100 coins by completing their profiles on RST. By using the ‘Recruit Minions’ (which, in essence, is just like an ‘Invite Friends’ tab) feature, there are coins to be won too. The excitements of mobile typing speed games and the chance to win the daily big prizes – this app has it all.

“RST is a pure, unadulterated delight. Personally, I love typing speed challenges – and the way in which this app combines such typing games with the excitements of a lottery-like challenge for big awards is nothing short of brilliant. I’ll be frank…I am looking forward to playing the game myself as soon as it is released at the stores.”

— Hussain Fakhruddin

  • FlyPal CRS – Also made with cross-platform compatibility (iOS and Android), FlyPal CRS is our very first application that is meant exclusively for the aviation industry. There is a systematic hierarchical structure followed in the app – Administrators/Admin, Operators, Crews – in decreasing order of authority. Admin-s and operators can view the real-time status of any crew member at any point in time, view the latter’s details, and can easily get in touch with them (via voice call or email). There is a handy documentation storage feature in the FlyPal CRS app as well – and Graph Reports on different things (for instance, the total flight time of a pilot in the last 30 days) can be checked. The app is one-of-its-kind, and we have real high hopes from it.

“FlyPal CRS is all about removing the information bottlenecks and communication problems that often tend to plague the aviation industry. The app facilitates quick viewing of flight crew status, and makes sure that senior authorities can contact crew personnel as and when required. The screen appearances, in-app navigation and the usage flow of the app are all carefully planned – and I fully expect FlyPal to soar high, just as its targeted users do!”

— Hussain Fakhruddin

  • DBT – After the super-success of I Can Be Anything, DBT is set to be our next big self-help app. Created for iPhone handsets (iOS 7, iOS 8 and iOS 9), this one serves as a very handy personal mobile diary companion app. Users can create lists of their ‘Skills’ and ‘Crisis’, and update them on a daily basis. Skill lists can be created, and individuals have the option of rating their skills (on a scale of 5). For a better understanding of the available details, graphs and charts can be viewed – directly on the app screens. The DBT self-help application pays attention to personal health issues as well. Users can upload and keep track of their regular medications and key health parameters (for regular monitoring). Emergency contact numbers and a special ‘Crisis Number’ can be stored too.

“Our mobile app company has worked on a fair few self-help apps, and I would rank DBT as one of the finest among them. It really works wonders as an all-aspects-covered application, tracking all types of stuff – right from skills and everyday problems, to health metrics, custom skill lists, and regular diary card entries. There are lots of benefits of this app – as I am sure its users will soon find out.”

— Hussain Fakhruddin

  • Fuel Up – Vehicle owners would love this little iOS fuel recharging app. It rids users of the worries of running out of fuel during drives, and running out of ideas too when there are no petrol stations nearby. With the help of device GPS, Fuel Up displays all other fellow-drivers in the locality, and as soon as a fuel request is put up – one of them would respond, get in touch, deliver the required petrol and collect the payment. A driver can even select how quickly (s)he needs the fuel delivery (quicker deliveries involve higher payments). The Fuel Up iPhone app can be used for getting fuel delivered to vehicles at remote locations too. People can also register as fuel-suppliers (‘Staff’) on the app. They need to take the required permits from Admins and City Managers, before starting to help out other drivers with fuel.

“I will never be too far from a fuel station – now that’s a wonderful feeling for any driver. Fuel Up provides exactly that assurance to users. Whenever petrol is running low, a user can simply launch the app, seek fuel from drivers nearby, purchase fuel from them, and get their car tanks filled. It’s easy to use, and it’s great to have during a long ride!”

— Hussain Fakhruddin

  • 365 Deal – This is an exclusive seller’s app, optimized for the iOS platform. Users can create and share their advertisements on the app. Two different types of ads – Premium Ads and Regular Ads – are displayed on the 365 Deal application, and a credit system is followed for managing the number of advertisements posted by every individual seller. Every ad has a proper title, description and image(s) – and they are listed under the appropriate categories and sub-categories. The overall flow of the app is extremely user-friendly, and interested buyers can get in touch with sellers directly (via message, chat or voice call). A cool mobile application to bolster the visibility levels of advertised products.

“An app with loads of ads can be a visual mess. No such risks with the 365 Deal app though. We spent a fair bit of time while deciding how ads will be displayed on the app screen, and while testing – we cross-checked to ensure that user-experience is not hampered in any way. The notifications system would be of help to sellers using the app too.”

— Hussain Fakhruddin

  • BableBark – A great app for all the pet-owners out there. BableBark can be paired with a Misfit Flash Device, to track the fitness levels of the four-legged companions of users (the device has to be hung on the their necks). Three parameters – No. of steps, Kilometers covered, and Calories Burnt – are monitored under the ‘Activities’ goal, while ‘Weight’ and ‘Medical’ are the two other goals tracked by this innovative iPhone pet care app. The fitness of animal companions matter, and BableBark lets users take care of their pets in the best possible way.

“Awareness levels about pet health and fitness are rising, and BableBark is a fine, fine app in this regard. From regular pet medications and vaccinations, to using the app with a misfit device…flash or shine…to monitor fitness – this app is an ideal pet caretaker for dogs and cats and other pet animals. Even their sleep quality can be tracked!”

— Hussain Fakhruddin

  • Looops – A campus poll app that promises fun, excitement, and oodles of laughter. After signing up, users can start ranking their friends on various polls (‘hottest’, ‘most stylish’, funniest’, etc.). To enhance user-convenience levels, our iPhone developers have made the login system to Looops via Instagram – and friends are fetched on the basis of their 5 latest photos on the social image-sharing network. The ranks on different polls are classified under 3 heads – ‘My School’, ‘Local Feed’ and ‘Greek Life’. Rankings from other ‘Local Schools’ can also be viewed. All the poll criteria are determined from backend. Looops will also come real-time chat messaging option with friends.

“Looops is one of those rare mobile campus apps that really capture the fun factor of college or university life. There are so many polls…each on a different criteria…and each user can rank his or her friends based on these parameters. I mean, what’s there not to like about an iPhone poll app that lets you order your buddies on the basis of their hotness, or style quotient, or any other such interesting criterion?”

— Hussain Fakhruddin

There are quite a few other interesting app projects we are working on now, but let’s conclude this list here. All of the above-mentioned apps should arrive at the app store(s) by the end of this quarter, and we are more than confident about their success.

Teks Mobile has been transforming good app ideas into great mobile applications for a decade now. 2016 has started out on a really promising note, and we look forward to working on many exciting new projects over the next few months.

iPhone 6C – 14 Interesting Features To Look Forward To

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Latest posts by Hussain Fakhruddin (see all)

Was Apple’s much-hyped iPhone 5C – the company’s first ‘budget smartphone’ – really a flop? While the total sales figures (nearly 25 million units) is pretty impressive, market analysts and iOS app developers unanimously agree that the handset was a poor performer in comparison with the iPhone 5S, which debuted alongside in September 2013. The Cupertino company is now all set to release iPhone 6C this Spring (March/April), and over here we take a look at some cool new facts about the handset:

 

  1. There will be no iPhone 6C – That’s because Apple will be, in all likelihood, going with the ‘iPhone 5se’ moniker. According to researchers and experts from the field of mobile app development, the upcoming iPhone model has been built on the lines of the iPhone 5S (obviously, without certain key features; more on that later). It won’t be a natural follow-up of iPhone 5C and is not a flagship model – the phone has been created as a ‘lighter’ version of iPhone 5S.
  2. Screen size and dimensions – iPhone 5se/iPhone 6C is the closest that Apple is likely to get to its older 3.5” iPhone models. The screen size of the new handset will be 4”, and it will come with an aluminum shell (hopefully, there will be no return of the disappointing plastic of iPhone 5C). The dimensions of the phone (122.9 mm x 57.6 mm) are just a shade lower than that of iPhone 5S (124 mm x 58.6 mm) – and the cases, ports and other accessories of both the models will be the same. In terms of device thickness too, iPhone 5se will closely resemble iPhone 5S.
  3. Touch ID and Apple Pay support – If the new iPhone model emerges a success, this will have an important role behind it. Unlike the slightly gimmicky iPhone 5C, iPhone 6C will have Touch ID, and hence, would support mobile payments via Apple Pay (via the now-familiar NFC technology in the iOS ecosystem). Users will be able to make payments securely within applications as well as at retail locations with iPhone 6C.
  4. Camera and Live Photos – While the design of the new iPhone model is a lot like iPhone 5S, its camera features are much more advanced. Just like the iPhone 6, the iPhone 5se model will have 8 MP rear camera and 1.2 MP ‘selfie’ camera. More interestingly, ‘Live Photos’ – a feature that only debuted with last year’s iPhone 6S/6S Plus – will be present in this ‘smaller’ iPhone as well. 3D Touch won’t be available on iPhone 6C though (i.e., the screen won’t be pressure-sensitive), and image playback will have to be initiated with a long press. HD photos (up to 43 MP) and 1080p high-definition video will be supported on the model, along with slow-motion 240 fps video files. Photography and recording are popular activities of average iPhone-users, and the soon-to-release handset won’t disappoint anyone in this regard.
  5. A9 processor for superior performance – Initial rumours suggested that iPhone 6C will be powered by the Apple A8 processor. However, it is now almost certain that the model will come with the breakthrough A9 processor and M9 motion coprocessor, both of which debuted on iPhone 6S. For CPU/GPU tasks, the new iPhone model will be, on average, 70%-80% faster than iPhone 6 (which has the A8 processor). Clearly, Apple is making every effort to enhance the acceptability of its latest iPhone offering.
  6. Storage and RAM – The iPhone 5S is available in two models – the 16GB and the 32GB. Reports from mobile app development forums suggest that the iPhone 6C will go a step further, and come in two alternative capacities – the 16GB and the 64GB. It would have been great if Apple would have put in 2GB RAM for iPhone 5se – but all things point to the fact that, the handset will have just the 1GB RAM space, like iPhone 5S/6.
  7. Display – There will be significant differences between the display of the new 4” iPhone and the iPhone 5S model its design is chiefly based on. For starters, it has been reported that iPhone 5se will have 2.5D curved glass display (like iPhone 6/6 Plus). Both the back and front chamfered edges will be ditched in favour of the curved display. Early adopters can look forward to a bright, detailed and lively display on the iPhone 6C.
  8. ‘Hey Siri’ on iPhone 6C – The always-on feature of ‘Hey Siri’ on iPhone 6C has already created a buzz among prospective buyers and iPhone app developers alike. Instead of having ‘Hey Siri’ only when the device is plugged to power (which was the way of things in earlier-generation iPhones that had separate motion processor chips), users of iPhone 6C will be able to activate and use the hands-free mobile digital assistant at any time.
  9. Battery performance – Battery life has never been a high point of Apple iPhones (with small incremental improvements seen in iPhone 6 and iPhone 6S). The soon-to-launch iPhone 6C will also be pretty much ho-hum regarding this. It is likely to come with a 1642 mAh battery – ensuring a similar, or slightly better, performance with iPhone 5S (1560 mAh). At a time when Sony Experia Z3 Compact is offering battery juice of 48 hours, it’s just a trifle disappointing that the talktime of iPhone 6C will be limited to 10 hours.
  10. Wifi and Bluetooth connectivity – iPhone 5se will be at par with the latest Apple smartphones in terms of connectivity features. 802.11ac Wifi will be available for quicker, interruption-free wireless internet access and browsing. Presence of the cutting-edge Bluetooth 4.2 technology will also work in favour of the new handset. What’s more, those who make mobile apps and other software are almost certain that iPhone 6C will come with full VoLTE support. A small and efficient device – that’s what Apple has shaped iPhone 6C to be!
  11. What’s with the ‘se’? – We have already highlighted that, on release, the iPhone 6C project (codenamed ‘N69’) will be called ‘iPhone 5se’. The ‘se’, in all likelihood, stands for ‘special edition’ – given how the handset is being positioned as a powerful yet smaller special version of iPhone 5S. Since most of the software and hardware specs (as well as other internals) have undergone upgrades, the ‘e’ in the name might stand for ‘enhanced’ too. The new handset will even have a barometer for elevation tracking, making the built-in Health app more informative.
  12. The price – The market performance of iPhone 5se will depend a lot on how it is priced. iPhone software and app-makers have repeatedly highlighted how iPhone 5C faltered regarding this – with hardly anyone being interested in a watered-down version of iPhone 5S, that was only $100 or so cheaper. As per early reports, the 16GB iPhone 5se is likely to be priced at $560, with the 64GB model being put up at a higher price point. To put matters into perspective, the pocket-pinch of the 16GB iPhone 6 is $549 – which makes the new model almost similarly priced to it.

 

Like iPhone 5S, the ‘small’ iPhone 5se/iPhone 6C will be available in Gold, Silver and Space Gray colours. A key USP of the handset will be its screen, which is ideal for single-hand optimization (although ‘Reachability’ to the edges might remain an issue). Contrary to initial speculations, Apple won’t be bringing 4K Video support to this handset. However, it does have an impressive lineup of features, and importantly, it won’t have another iPhone model to directly compete with (the iPhone 5C was, to an extent, cannibalised by iPhone 5S). iPhone 5se arrives in a couple of months – and it remains to be seen whether this becomes another successful release from Apple.