Integrating SharePoint, iPhone Apps and Android Apps

Microsoft SharePoint Logo

Microsoft SharePoint

Microsoft SharePoint is a popular content and data management system, which integrates easily with non-microsoft technology, such as iPhone Apps and Android Apps.

The functionality of SharePoint I have experience integrating is SharePoint Lists.

A SharePoint List is a cross between a web document and a database. It provides means for quickly building and maintaining structured data, and defining relationships between different elements of that data.

For example, you can define a Microsoft SharePoint list which holds details of assets which your company manages, such as factories, shops, or other inventory, then define a second list, which provides a maintenance history for each asset. The second list can be linked to the first list, so for example you can enforce that one of the fields in the second list must be the identity of an asset in the first list.

SharePoint takes care of the complexity of handling collaborative updates to list documents, such as versioning of each change.

There is even an attractive web interface, which is compatible with most mobile devices, and several excellent iPhone Apps and Android Apps, for accessing your SharePoint portal.

So why would you ever need a bespoke iPhone App or Android App, to interact with SharePoint?

The reason clients ask me for help with SharePoint integration is because standard, off the shelf apps do not deliver a specific feature or set of features they require.

For example, what do you do if you want to take SharePoint offline? A client had a requirement that mobile apps be able to be used at sites with poor Internet coverage, so they needed an app which could populate the fields of new SharePoint list instances, and save the new instances in the internal storage of their iPad device, so all the saved changes could be applied to the server once the user had access to the Internet.

Another scenario, a client wanted to extend SharePoint functionality with app device capabilities, to create the ability to upload mobile camera photos to SharePoint list instances, and to upload GPS readings.

Finally, since the apps are interacting with SharePoint as a data store, the Apps are free to implement their own front end – they can guide users through the data acquisition or data delivery process, by imposing a specific workflow on the users – by granting users a limited view of the underlying SharePoint data, and by ensuring all necessary steps of a workflow are executed in the correct order.

A bespoke SharePoint iPhone App or Android App can preserve SharePoint flexibility. It is entirely possible for mobile Apps to apply the bespoke SharePoint functionality extensions on a list field by field basis, to allow the list structure to be changed, to allow new fields to be exposed to users without having to release a new version of the bespoke iPhone or Android SharePoint App.

Bespoke Customisation of the SharePoint experience can help with delivering acceptance and enthusiastic adoption of the underlying SharePoint implementation, by painlessly integrating user requirements which are not best handled by the standard toolset.

Contact me now, if you have or are interested in creating a Microsoft SharePoint based user experience, but have requirements which go beyond what the standard tools can deliver.

Slow Web Day!

What do you do when your website is running slowly, or not responding?

I had to deal with this situation today, when someone pointed out they couldn’t see my home page.

My first action was to wait a bit – sometimes transient internet glitches occur, so simply waiting a few minutes can save a lot of wasted effort, trying to get to the bottom of a problem which doesn’t exist.

Waiting didn’t help in this case, so my next step was to examine the server logs, to find clues as to what was happening.

I immediately found the problem – thousands upon thousands of requests, for a file called xmlrpc.php.


89.248.168.46 – - [24/Sep/2014:10:00:27 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:26 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:28 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:26 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
89.248.168.46 – - [24/Sep/2014:10:00:37 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
80.82.65.17 – - [24/Sep/2014:10:00:41 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”

xmlrpc.php is a legitimate web file, which helps some servers communicate with web pages. But these web requests were clearly not legitimate – my web server does not use xmlrpc.php. These web requests are incoming attacks from computers which are infected by a computer worm.

The attacks aren’t targeting the Desirable Apps website specifically – they are infected computers blindly attacking any other machines they can find, in the hope of infecting a new host. But there are currently so many computers infected by this worm, the effort of trying to respond to all the legitimate looking requests from infected machines is (or was) overloading my website, preventing legitimate visitors from getting a response.

The solution was, in this case, very straightforward. Since I don’t use xmlrpc.php, I modified the web server configuration to immediately reject any request which referenced xmlrpc.php, without attempting in any way to process it.

Desirable Apps is still being attacked – but it is now rejecting the attack requests far more efficiently, so the web server is now able to respond normally to legitimate visitors.

The Mobile App Revolution

The App Revolution Screenshot

The App Revolution

Back in 2012 Channel Nine (Australia) presented “The App Revolution” as a segment of the popular “60 Minutes”.

http://sixtyminutes.ninemsn.com.au/stories/8491606/the-app-revolution

The video of the presentation is now available online.

I strongly recommend anyone interested in developing an iPhone App or Android App watch the presentation. It communicates how apps have changed the world, and how lives have been transformed by people with a simple idea, and a burning desire to make it happen.

If you are interested in learning more about mobile app development, Contact Me.

Apple announces iPhone 6, iPhone 6+ and new iWatch

The long anticipated announcement from Apple has arrived – two new iPhones, iPhone 6 and iPhone 6+, and a new iWatch, to be released early next year.

Pre-ordering is available from the 12th in Australia.

iOS 8, the new Apple Operating System, will also be released on the 17th September.

All I can say is – WOW. New operating systems bring both challenges and opportunities.

The challenge is that some apps will inevitably break – if you have any concerns about your iPhone app, Contact me now for advice on how to proof your app against the new upgrade.

The opportunity is the new capabilities that iOS 8 will bring to iPhone Apps, and the new possibilities the faster A8 processor will open.

For more information on how your iPhone app can benefit from iOS 8, or how this transforms the landscape of what is possible, Contact eworrall1@gmail.com.

Why do your clients need your mobile app idea?

Dilbert - Corporate Strategy

Dilbert – Corporate Strategy

Today’s Dilbert cartoon is a hilarious take on marketing, which contains more than a grain of truth. Dilbert, in this episode, when asked what should be done to sell more products, replies “we should find out what they need, and give it to them”.

This solution seems so simple, so self evident, yet its amazing how rarely people follow this fundamental prescription for success.

Dilbert is not specifically about iPhone Apps or Android Apps, but its well worth reading – it satirises many common business mistakes.

Anyway, enough preaching – enjoy the cartoon :-)

http://dilbert.com/strips/2014-09-07/

Beware War Kitty!

A security researcher with rather too much time on his hands, has turned his grandmother’s siamese cat into a devastating cyberspy. He did this, by creating a cat collar with a WIFI sensor, which detects weak home wireless internet systems, and reports back to home base.

The original cat collar was just a HTC mobile phone attached to a normal collar, but this proved too much of a burden to the cat, which ditched its payload, then ran off and hid.

So the researcher went all out, creating a super miniature version of his cyber sniffer.

For full details of this hilarious, yet oddly disturbing story, Click Here

Android App Blabs ALL your Secrets

The listening ear

The listening ear

The Register reports on a bizarre new Android App hack, which literally makes your phone blab all its secrets.

The malware app sidesteps the normal attack vectors by doing one simple thing – calling the bad guy’s voice phone number – then the malware coerces the phone into actually “speaking” all your secrets down the phone line, using a bug in Google text to voice.

So next time your phone starts talking by itself, listen to what it is saying – because all that unexpected chatter might be something more sinister than a funny little software defect.

Mobile App satisfaction vs Monetisation

A cauldron with money

Monetising Apps with Advertising

According to the latest American Customer Satisfaction Index, Facebook has suffered a significant drop in customer satisfaction, and is now close to the bottom of the heap, along with Linked in.

The drop in satisfaction ratings may be related to the level of advertising on the sites. Google+ for example, lost ground last year, but appears to have recovered some ground;

“A sharp increase in search engine advertising contributed to a drop in user satisfaction last year, but Google’s latest change to the way ads are labeled, along with its focus on the mobile user experience, may be steps in the right direction,” said [ACSI director] VanAmburg

If there is no in-app or web site advertising, sites and iPhone apps and Android apps which rely on advertising for revenue wouldn’t make any money – but the satisfaction surveys are a warning to businesses which rely on advertising revenue, not to push the envelope too hard. Because there is always a competitor eager to offer your customers a better user experience.

Who wants their picture in iPhone App Store?

Mirror Mirror Logo

Mirror Mirror – new iPhone App

Who wants their picture in iPhone App Store?

I’m about to release a new iPhone app – Mirror Mirror

Mirror Mirror is an incredibly simple app – all it does is turn the iPhone into a makeup mirror.

Unlike the iPhone selfie camera, which swaps left and right, Mirror Mirror behaves like a real mirror – left is left, and right is right.

I need to create 4 screenshots to promote the app. But this is a challenge – the app is so simple, its just a mirror.

So here’s my idea – if anyone wants to volunteer a selfie, and it isn’t too outrageous, it goes into the app. First 4 selfies I like.
Please hold the phone at arms length, with a simple background (like a white plaster wall) – I need to resize the image to fit all the different formats app store requires.

Please post selfie pictures to Queensland Mobile App Developers – I should be able to use the Facebook copy of your selfie image, but if this doesn’t work out, I’ll send you an address so you can email me a copy.

When (hopefully!) Apple approves Mirror Mirror, I’ll post a link to the app store listing, so you can show your friends a picture of yourself, in app store, on the promotion page of a real iPhone app.

Amazon Cognito – A New Server for iPhone and Android Apps

Amazon have just announced Amazon Cognito – a new server technology for rapid development of Mobile App Servers.

Servers are a common feature of iPhone Apps and Android Apps. In its simplest form, a mobile app server allows apps to share data. Although iPhone Apps and Android Apps have access to the internet, they can’t talk directly to another copy of the same app on a different phone, except in special circumstances (e.g. if both apps are on the same WIFI network). There are various technical reasons for this, though one of the most important is the apps simply can’t find each other.

Instead, iPhone Apps and Android Apps use their internet access to contact a server, at a known internet address, which relays messages between different phones.

Amazon Cognito aims to simplify this process, by reducing the effort required to create new app servers. Instead of having to write variations of the same server code again and again, apps which need to share data can link up to Amazon Cognito, with minimal bespoke server code and server configuration.

Contact me if you would like to find out more about how Amazon Cognito could simplify the design and cut the cost of your next iPhone App or Android App.