Getting details of all the installed apps on an Android device is incredibly simple – here’s a utility method which I hope will prove useful.
private List<ApplicationInfo> getListOfApps() {
// http://developer.android.com/reference/android/content/pm/PackageManager.html
// Class for retrieving various kinds of information related to the application
// packages that are currently installed on the device.
PackageManager packageManager = getPackageManager();
// Get a list of the installed applications
List<ApplicationInfo> listOfApps = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);
return listOfApps;
}
Saturday, 17 October 2015
Wednesday, 10 June 2015
iTunes Connect - taking the pain out of app store submission with launchkit screenshot builder
You've put a lot of hard work into building your app for iPhone or iPad and then you get the frustration of having to create your store listing. Creating a good store listing can make a huge difference to how your app performs so it's vital you add as much information as you can and screenshots are probably the number one thing users will want to see. Then it hits you, you need to create screenshots for 4.7, 5.5, 4 and 3.5 inch screens! ARGH!
However, it's not as bad as you think thanks to launchkit screenshot builder. This great on-line tool allows you to upload a set of screenshots (in one size), and choose text to accompany them and will then generate and email you the images you need to upload directly to iTunes Connect.
It's as easy as that - a huge time saver!
However, it's not as bad as you think thanks to launchkit screenshot builder. This great on-line tool allows you to upload a set of screenshots (in one size), and choose text to accompany them and will then generate and email you the images you need to upload directly to iTunes Connect.
![]() |
Example from launchkit's site. |
Thursday, 28 May 2015
App Support
For any support queries please contact rdmacken@gmail.com with as much detail as possible to help resolve the issue.
Sunday, 17 May 2015
IOS Development: Keyboard shortcut to switch project windows in XCode
Being new to IOS development you may get frustrated with this one as well - how do I quickly change project windows in XCode?
The shortcut is the Command and tilde key:
This is saving me a ton of time - I was previously having to go to Window -> [selected project].
Any other handy keyboard shortcuts for beginners?
The shortcut is the Command and tilde key:
CMD + ~
This is saving me a ton of time - I was previously having to go to Window -> [selected project].
Any other handy keyboard shortcuts for beginners?
Saturday, 11 April 2015
App Development: Overcoming Writers Block
Writers block - the curse of no longer being able to produce creative content. It's affected writers for years, but is also a very common problem for app developers. When it comes to app development, what can we do about it?
The causes for app writers block are mostly similar to traditional writers block, for example:
The causes for app writers block are mostly similar to traditional writers block, for example:
- Running out of inspiration
- Illness (physical or mental)
- Financial pressures
- Sense of failure (see the depressing side of app development)
Since these are already known problems traditional strategies for overcoming them can also be applied.
- Cut off the Internet! Is procrastination your problem - too many notifications or fun things to look at elsewhere? It's amazing how productive you can be if you turn off the internet for 30 minutes - a kick start is all you need.
- Exercise. You may not be doing any app development because you feel lethargic - exercise can help this and make you feel more alert.
- Brainstorm ideas. Get a bit of paper, and write down mind maps or random ideas you have.
- Change your location. A change of scenery can do you good - get out the house and head to a coffee shop or park and see if that can help inspire you.
![]() |
Picture by photosteve101 |
The above techniques all transfer well to app development. However, the best technique I have found is to plagiarise! Ok - maybe not really plagiarise, but look elsewhere for inspiration. It's easy to think that you need to always do something unique, but taking another idea and making it better or with a different twist is a great way to get your creative juices flowing. Check out the top apps in various categories on as many app stores as you can. If you do only Android - check the iTunes store as well and vice versa.
Monday, 6 April 2015
How to: Install Gradle on Windows
Step 1: Download the latest version of Gradle from the official site.
Step 2: Extract the contents into a folder e.g. "C:\gradle-2.3".
Step 3: Open up the environment variables window. To do this:
Step 2: Extract the contents into a folder e.g. "C:\gradle-2.3".
Step 3: Open up the environment variables window. To do this:
- Right click on your computer and click "Manage"
- Click "Advanced System Settings"
- Click "Environment Variables"
Step 4: Add new System Variable (or user variable if you only want it on your user account).
Step 5: Click New and enter Environment Variable as "GRADLE_HOME" and value as the bin directory of your Gradle installation path from step 2 e.g. "C:\gradle-2.3\bin". Press OK.
Step 6: Find the "Path" variable and press Edit. Scroll to the end of the text and add the text "%GRADLE_HOME%". Remember to separate from previous entry with a semi-colon ";".
Step 6: Press OK to exit the environment variable window and advanced system settings.
Step 7: Open up a command prompt window. (press windows button and enter "cmd" as a shortcut).
Step 8: Check Gradle version by entering text "gradle -v". If installation has been successful you should see something like the following:
C:\Users\username>gradle -v
------------------------------------------------------------
Gradle 2.3
------------------------------------------------------------
Build time: 2015-02-16 05:09:33 UTC
Build number: none
Revision: 586be72bf6e3df1ee7676d1f2a3afd9157341274
Groovy: 2.3.9
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM: 1.7.0_25 (Oracle Corporation 23.25-b01)
OS: Windows 8 6.2 amd64
You should now be set up for using Gradle.
Tuesday, 10 February 2015
Delivering constructive review feedback to technically superior employees
End of year reviews have either been recently completed or are in the process of being finalized. As a peer, scrum-master or manager you have probably been involved in delivering in some form feedback to the technical people in the team. In software development appraisals can quickly be dismissed as a box ticking exercise for management, but it doesn’t have to be this way. Camille Fourneir wrote a blog earlier today on this very subject where she actually emailed her team with a justification as to why the process is important. The process can be even harder if you are giving feedback on someone who has more experienced or specialist technical skills. Here’s some tips I have found help in constructing a useful, engaging appraisal process which helps you achieve the two main goals of a review process – highlighting achievements and identifying areas which can be worked on in the new year. This is useful for both people providing feedback on their peers, and for those managing others.
![]() |
Image from freeimages |
Firstly the review process should be a two way process. If you are a manager, you are not just looking at a developers year and commenting on them; this is their chance to comment on your performance in relation to their role. For example, they may think you are good at dealing with impediments for the good of the team, but they find that you are sometimes a block between the development team and the end customer. This kind of feedback is invaluable to you and you should actively encourage it.1. The review process is not one way!
Secondly, contrary to point 1, the review process is not just a two way process – it should include peers. One person saying to another person they are good or bad at a specific thing can lead to confrontation or the person being appraised not believing the feedback; however if you get peer feedback from multiple team members with multiple people mentioning the same points, then it is harder to disagree with. A process which has worked well for me is for each team member to nominate 3-5 peers who can provide anonymous feedback on their performance. The appraiser collates the feedback to make it anonymous and provides it prior to the review starting to give the person time to review their feedback and take it in. Feedback from peers will generally resonate better than manager feedback, as you may work far more closely with your peers than you do a manager. This is also allows you to collate both technical and non-technical feedback from various roles within the company, removing the need for you to feel like you need to comment on someone's code if you yourself are not a developer for example.2. Include anonymous peer reviews in the process.
The third main point is that you need to provide both positive and negative (constructive…) feedback. It is important to celebrate the successes of the previous year. Even if someone has had an unbelievable year, you still need to give them something to work on the next year. The best employees will want constructive feedback so they can improve their performance – we are all professionals after all and the software development industry requires continuous self improvement.3. Provide positive and negative feedback.
The biggest failing in feedback processes I see is when peers only provide glowing feedback for their peers. Whilst this is great for the review meeting and egos can be massaged, it isn’t for the best of the person being appraised. Getting focussed feedback on areas to improve will be the best thing in the long run, especially if multiple people pick up on something. For junior members of the team giving feedback on someone with superior technical skills or for managers who do not have the same level of speciality in a technology this can be a challenge and intimidating. However, from experience, any honest feedback will be well received and will help gain respect amongst peers.
The most common cause for uncomfortable reviews is when they are only done once a year. One to ones should take place throughout the year and should remove the opportunity for surprises when it comes to the review process. Is it really fair to land negative feedback after 12 months when you could have mentioned it in January and resolved the issue immediately?4. Regular reviews throughout the year.
5. The outcome of the review is not to encourage someone to aim for a managerial role – there should be a technical career path!
In software development there is a tendency to encourage our best engineers to progress to a point where their technical prowess is no longer used as they move to a management role – which is simply absurd. In reviews, the person being appraised may feel like they have to say they want to work towards management or a scrum-master role, purely as they want to show they have ambition even though it may not be the best thing for them. A good company will have a technical route for employees as well as a managerial route. Just because you are the best developer in the company, doesn’t mean you can’t improve and do more from a technical point of view. Make sure there is a career ladder people who don’t want to go into management can follow. Managers don’t need to get paid more than the best developers! Keeping your best developers developing if that is what they want to do will ultimately lead to you having a greater product. Erik Dietrich describes this common problem in the following great blog post.
Related Posts:
Subscribe to:
Posts (Atom)
Covid-19 impact on mobile applications - a quick case study
Amidst everything that's been going on over the last few months, checking on how my apps have been doing has been low down my priorities...

-
I came across the following great site on Stumbleupon today - programming-motherfucker.com - and as a developer had a great laugh before re...
-
Analytics are key to measuring the success of your project or application and are a great way of identifying your users trends and demograph...
-
So my first experience of Android development left me frustrated after getting an error trying to launch the simple Hello World example! ...