Showing posts with label Android. Show all posts
Showing posts with label Android. Show all posts

Thursday, July 24, 2014

Who Owns the Source Code?

A client had developed an app and asked us to do some minor work on their existing app. I told him that we would need access to the source code so the client went back to the original developer to get the source code only to find that the developer claimed the source code as his intellectual property and refused to provide it. Unfortunately, this is not the first time I’ve seen this source code ownership issue. Here are some of the implications of not having the source code to your app:
  • You are forever tied to the developer. Any modification, bug fix, or upgrade has to go through that developer. This is problematic because the developer could raise the price of development and is problematic if that developer becomes sick, busy with other projects, etc.
  • Raising funds or selling your project becomes more difficult because there’s a question of who owns the intellectual property.
Common Law
(Disclaimer: I’m not a lawyer; if this is a concern, please get good legal counsel). In general, the author of content owns the copyright. In the case of a software developer, it’s the person physically typing on the key board to create the code. An exception occurs under the “Work for Hire” doctrine where the work is developed by an employee with the scope of their employment. However, when contractors are used, this becomes a little more unclear.
Personal Opinion
If I hire someone to buy a house, at the end of the project, I want the keys to it. In a similar fashion, if I pay someone to develop an app for me, I would expect to have the source code upon completion. At Apptology, this is our general policy. The exception is when we develop an app based off one of our templates. In which case, the template is our intellectual property.
Recommendations
If you are having an app developed by a contractor, have an open discussion about the source code ownership as part of the vetting process. If you don’t agree with their source code policy, move on. If you decide to go with that developer, make sure the ownership of the source code is spelled out in the contract.

Tuesday, March 25, 2014

10 Tips for Efficient Android Apps Development

The best recipe for becoming a complete flop in Google Play is to release an app that is battery and memory hungry with a slow interface. Most likely, these qualities will ensure negative reviews from users and result in a bad reputation, even if your app has great design and a unique idea.

Every drawback in product efficiency, battery and memory consumption can really affect your app’s success. That’s why it is critical to develop well-optimized, smooth running apps that never make Android system guard against them. We will not speak about efficient coding, since it goes without saying that the code you write should stand any performance test. But even brilliant code takes time to run. In today’s post, we’ll talk about how to minimize this time and make Android apps that users love.

Efficient threading



Tip 1: How to off-load operations onto threads in background


Since by default all operations in an app run on the main thread (UI thread) in the foreground, the app responsiveness might be affected, which will imminently result in hangs, freezes and even system errors.

To reinforce responsiveness, you should shift long-running tasks (e.g. network or database operations, complex calculations) from an app's main thread to a separate background thread. The most effective way to accomplish this task is at a class level. You can use AsyncTask class or IntentService class to organize background work. Once you have implemented an IntentService, it starts when needed and handles requests (Intents) using a worker thread.

When using IntentService, you should consider the following limitations:
  • This class does not put results to UI, so to show results to users use Activity.
  • Only one request is processed at a time.
  • Any request processing can not be interrupted.

Tip 2: How to avoid ANR and stay responsive


The same approach of off-loading long-running operations from the UI thread will save your users from the "Application Not Responding" (ANR) dialog. What you need to do is to create a background worker thread by extending AsyncTask and implementing doInBackground() method. Another option is to create a Thread or HandlerThread class of your own. Keep in mind that unless you specify "background" priority for the thread, it will slow down the app since the default thread priority is the same as of the UI thread.

Tip 3: How to initiate queries on separate threads


Displaying data is not immediate, although you can fasten it by using CursorLoader objects, which allows not to distract Activity from interacting with a user while query is processing in the background. Armed with this object your app would initiate a separate background thread for each ContentProvider query and return results to Activity from which the query was called only when the query is finished.

Tip 4: What else you can do

  • Use StrictMode to detect potentially lengthy operations you do in the UI thread.
  • Use special tools, i.g. Systrace, Traceview, to find bottlenecks in your app responsiveness.
  • Show progress to users with a progress bar.
  • Display splash screens if initial setup is time-consuming.

Device battery life optimization



We cannot blame users for angrily uninstalling applications that abuse battery life. The main threats to battery life are:

  • Regular wake-ups for updates
  • Data transfer via EDGE and 3G
  • Textual data parsing, regex without JIT

Tip 5: How to optimize networking issues


  • Make your app skip operations if there is no connection; update only if 3G or WiFi is connected and there is no roaming.
  • Choose compact data format, e.g. binary formats that combine text and binary data into one request.
  • Use efficient parser; consider choosing stream parsers over tree parsers.
  • For faster UX lessen round-trip times to server.
  • When possible use framework GZIP libs for text data to make the best use of CPU resources.

Tip 6: How to optimize apps working in foreground


  • When designing wakelocks, set the lowest level possible.
  • To avoid battery costs caused by potential bugs you might have missed, use specific timeouts.
  • Enable android:keepScreenOn.
  • In addition to GC (garbage collection) consider recycling Java objects manually, e.g.:
    • XmlPullParserFactory and BitmapFactory
    • Matcher.reset(newString) for regex
    • StringBuilder.setLength(0)
  • Mind synchronization issues, although it can be safe when driven by UI thread.
  • Recycling strategies are used heavily in ListView.
  • Use coarse network location not GPS when possible. Just compare 1mAh for GPS (25 sec. * 140mA) and 0.1mAh for network (2 seconds * 180mA).
  • Make sure to unregister as GPS location updates can continue even after onPause(). When all applications unregister, users can enable GPS in Settings without blowing the battery budget.
  • Since the calculation of a floating point requires lots of battery power, you might consider using microdegrees for bulk geo math and caching values when performing DPI tasks with DisplayMetrics.

Tip 7: How to optimize apps working in background


  • Since each process requires 2MB and might be restarted when foreground apps need memory, make sure the services are short-lived.
  • Keep memory usage low.
  • Design app to update every 30 minutes but only if device is already awake.
  • Services that pall or sleep are bad, that is why you should use AlarmManager or <receiver> manifest elements: stopSelf() when finished. When you start service using AlarmManager, apply the *_WAKEUP flags with caution. Let Android bin your application update together with the rest through setInexactRepeating(). When using <receiver>, enable/disable its components in manifest dynamically, especially when no-ops.

Tip 8: What else you can do


  • Check current states of battery and network before launching a full update; wait for better states for bulk transfers.
  • Provide users with battery usage options, e.g. update intervals and background behavior.

Implementing UI that leaves minimum memory footprints



Tip 9: How to identify layout performance problems


When creating UI sticking solely to basic features of layout managers, you risk to create memory abusing apps with annoying delays in the UI. The first step to implementation of a smooth, memory caring UI is to search your application for potential layout performance bottlenecks with Hierarchy Viewer tool included into Android SDK: <sdk>/tools/. Another great tool for discovering performance issues is Lint. It scans application sources for possible bugs along with view hierarchy optimizations.

Tip 10: How to fix them


If layout performance results reveal certain drawbacks, you might consider to flatten the layout by converting it from LinearLayout class to RelativeLayout class, lowing level hierarchy.

To perfection and beyond



Even though each tip mentioned above might seem like a rather small improvement, you might see unexpectedly efficient results if these tips become an essential part of your daily coding. Let Google Play see more brilliant apps that work smoothly, quickly, and consume less battery power, bringing the Android world one more step closer to perfection.

---
This article was originally published on Androidie. [Source]

Monday, January 13, 2014

Why Developers Choose iOS Over Android and Why that Needs to Change?

Android just hit 1 billion users mark with the launch of Android KitKat. It is clearly chasing rainbows with their high popularity and variety of devices. Apple on the other hand has been very steady and have managed to sell 700 million iOS devices so far and are still continuing to do reasonably well in the smartphones market. But one can’t deny the fact that Android has been roaring all this while, but developers don’t think so.
Yes, The app developers are choosing iOS over Android. If you look at the most recent super successful apps like Vine or Instagram, you will notice one thing in common that they were both built for iOS users first. The list of such apps goes on and on.
android vs ios Why Developers Choose iOS Over Android and Why that Needs to Change?
Let’s have a look at some of the reasons why developers are happy developing apps for iOS.
Ecosystem
As you know both iOS and Android have different ecosystems; there are a limited iOS devices with perfectly configured versions of iOS for each one of them. The iOS versions have been steadily updating and the updates are available for almost each and every device at the same time. Android on the other hand is known to be a bit scattered at that, having a fragmented ecosystem. There are a lot of manufacturers involved. Therefore, tons of devices with different hardware use, different screen resolution and of course varying price range are available, which means the app has to be tested on different OS versions, different hardware levels, and different screen resolutions. That’s a lot of effort there.
Developers love tight ecosystems. With the explanation of both the ecosystem above, you can tell which one will need more resources and more time. It’s Android, hence, developers go for the iOS app first.
Money Matters
It’s a known fact that Android users will not pay for the apps as easily as iOS users would. Android users like their apps for free. And that forces the android developers to earn money via putting up ads in the apps that they develop. Putting ads is probably not the greatest way to earn money.
iOS users on the other hand like to purchase their apps from the app store, that means more money. If you were a developer you’d probably choose iOS platform as well.
Piracy Kills
With Android piracy at its peak, there are a lot of third party websites that provide the paid apps for free, which is a real set back for many developers. It doesn’t mean there are no piracy issues with iOS but they are very limited to jailbroken iOS devices.
Lack of good Android Tablets
Believe it or not, but this factor does play an important plan in setting a particular mindset for the developers. Apple’s iPads are indisputably the best piece of tablets that you could buy from the market. It has definitely been able to change the smartphone markets by filling in with a lot of large sized smartphones. More iPads selling means more reach, and more reach means more business. That’s enough to make up developers minds to go for iOS first.
Manufacturers like Samsung, LG, ASUS are working on Android tablets but not as good as Apple, and while some tablets are doing good, there are no tablet friendly apps for those devices, which ultimately adds up to less sales and leads to less android apps.
Customers force Developers to go iOS First
In most cases, customers want developers to go iOS first in which case developers have no other option. For example, Facebook rolls out most of their significant updates on iOS devices first. Here, the developers working under Mark Zuckerberg have no option but to follow the orders.
Google Asus Nexus 7 Tablet Why Developers Choose iOS Over Android and Why that Needs to Change?
Why This Needs to Change?
Well, things are changing now. The famous Android vs iOS war is taking a big turn. Android has now released Android Kitkat, which according to Sundar Pichai, head of android, will support on all the devices ranging from cheap galaxies by Samsung to expensive “Ones” by HTC. What does that mean? That means less to no fragmentation in the ecosystem. Developers will need less resources and more importantly less time to create Android apps.
With Nexus 7 and Nexus 10, Google’s flagship tablets, Google has been able to break the less-sales-less-apps chain and both the tablets are doing very well with Nexus 7 topping the Amazon sales charts. Technically both the tablets are feature rich with great displays and are very cheap. This should boost developers morale to go for Android first.
The growth rate of Android has been very impressive and assuming that Google will be able to get rid of the piracy that Android is going to be the best thing for the developers unless Apple acts.
With Android KitKat, Google is looking to get to another billion soon while iOS is yet to hit the billion mark. And as we know that money matters, the billion mark should give the message to developers on how big Android is going to be in next few years.
The last and probably the best argument would be, “Android is Open Source”. You have heard of it over and over again and this is the reason Android took off in the first place. It still remains the single reason for a lot of developers who like the sense of openness and independence.

Friday, November 22, 2013

App Translation Service Now Available to All Developers

The App Translation Service is now available to all developers. Every day, more than 1.5 million new Android phones and tablets around the world are turned on for the first time. Each newly activated Android device is an opportunity for you as a developer to gain a new user, but frequently, that user speaks a different language from you.

To help developers reach users in other languages, we launched the App Translation Service, which allows developers to purchase professional app translations through the Google Play Developer Console. This is part of a toolbox of localizationfeatures you can (and should!) take advantage of as you distribute your app around the world through Google Play.
We were happy to see that many developers expressed interest in the App Translation Service pilot program, and it has been well received by those who have participated so far, with many repeat customers.

Here are several examples from developers who participated in the App Translation Service pilot program: the developers ofZombie Ragdoll used this tool to launch their new game simultaneously in 20 languages in August 2013. When they combined app translation with local marketing campaigns, they found that 80% of their installs came from non-English-language users. Dating app SayHi Chat expanded into 13 additional languages using the App Translation Service. They saw 120% install growth in localized markets and improved user reviews of the professionally translated UI. The developer of card game G4A Indian Rummy found that the App Translation Service was easier to use than their previous translation methods, and saw a 300% increase with user engagement in localized apps. You can read more about these developers’ experiences with the App Translation Service in Developer Stories: Localization in Google Play.

To use the App Translation Service, you’ll want to first read the localization checklist. You’ll need to get your APK ready for translation, and select the languages to target for translation. If you’re unsure about which languages to select, Google Play can help you identify opportunities. First, review the Statistics section in the Developer Console to see where your app has users already. Does your app have a lot of installs in a certain country where you haven’t localized to their language? Are apps like yours popular in a country where your app isn’t available yet? Next, go to the Optimization Tips section in the Developer Console to make sure your APK, store listing, and graphics are consistently translated.



You’ll find the App Translation Service in the Developer Console at the bottom of the APK section — you can start a new translation or manage an existing translation here. You’ll be able to upload your app’s file of string resources, select the languages you want to translate into, select a professional translation vendor, and place your order. Pro tip: you can put your store listing text into the file you upload to the App Translation Service. You’ll be able to communicate with your translator to be sure you get a great result, and download your translated string files. 

After you do some localization testing, you’ll be ready to publish your newly translated app update on Google Play — with localized store listing text and graphics. Be sure to check back to see the results on your user base, and track the results of marketing campaigns in your new languages using Google Analytics integration.

Wednesday, November 20, 2013

5 biggest myths about Android



Fear, uncertainty and doubt, or FUD, is a common tactic in marketing and there’s a fair bit of evidence that negative advertising works. Competitive companies are backed up by legions of fans invested in their wares and everyone feeds their thoughts into the biggest rumor mill ever devised – the Internet. It is fantastic at perpetuating myths and spreading lies, whether it’s the latest fake celebrity death, or the idea that PC gaming is dead. Once you put an idea out there, even if it’s an outright lie that you later retract, it takes on a life of its own.

There are some big, persistent myths about the Android platform that simply will not die. Here are top five of them.


Android lags and crashes are worse than the competitors (iOS and Windows)


In the early days of Android there was a lot of talk about the platform being laggy and it’s never really gone away. There have also been claims that Android apps crash more often than the apps on other platforms. All the mobile platforms suffer from lag and crashes from time to time. Problems tend to be worse just after a major platform update because it takes time for the app developers to catch up and optimize.
Various studies, like this one at Forbes based on Criticism data have shown that iOS apps crash more often than Android apps. A year later and Forbes reported that apps on iOS 6 crash less than apps on Jelly Bean. It’s very difficult to get reliable independent data on this topic and it’s tough to properly compare platforms.
Lots of people on every platform encounter crashes. Complaints about it being a particular issue on Android could be related to our last point about cheap hardware. Underpowered hardware, manufacturer UIs, and carrier bloatware could all have an impact, but they don’t point to any instability or performance issue inherent in Android. Good Android smartphones or tablets do not suffer from significantly more lag or crashes than devices on any other platform. It’s also worth pointing out that “good” doesn’t necessarily mean the best specs. Today's top android dogs like HTC One, Nexus 5, Xperia Z are as butttery smooth as iPhone 5/5S or any Windows phones like Lumia 1020 etc.


Android is complicated

According to the latest figures from IDC Android pushed past 80% worldwide market share for the first time last quarter. Surely we can put the idea that it’s complex, hard to get to grips with, or only for hardcore techies to bed now? It was only a couple of years ago that Microsoft’s Steve Ballmer said “You don’t need to be a computer scientist to use a Windows phone, but I think you do to use an Android phone.”

Android is not complicated

Right from day one the idea that Android was not intuitive, or that there’s a really steep learning curve before you can master it, was pure nonsense. Most people came to Android from feature phones. The platforms we used before were filling up with perplexing icons and layers of hidden menu options. Android was extremely intuitive by comparison, and the user experience has been streamlined further with each new version.
The idea that the Android platform is too hard for the average user to figure out is seriously insulting to the average user. There is no significant difference in usability between any of the major mobile platforms and even android has become more user friendly and easy to use after major update of Ice cream sandwitch 4.0 onwards.

Android malware will infect your phone

android-malware

There’s no doubt that malware exists and there are plenty of people trying to infect your smartphone, but for the average user Android is secure enough. It’s not difficult or complicated to protect yourself from threats. Every app that is installed on Android has to ask for permissions and you can review them before you decide whether to install.
If you feel like that’s too much hassle then there’s a very simple alternative. Start by installing a security app, the independent security institute, AV Test, does a regularly updated report on the best options and most of them are free. Don’t go outside of Google Play for apps, most malware comes from third-party stores or other sources. Since it takes time to identify malware you can drastically reduce your risks by not downloading the newest apps, stick to things with plenty of reviews and download numbers. Apply the same common sense you would browsing the web on your computer – don’t click on suspicious links or open suspicious email attachments. Don’t root your phone.
Eric Schmidt got laughed at when he said Android is more secure than the iPhone, but the real point is that the user is the weak link. If you choose to bypass the layers of security built in to any good mobile platform (Android, iOS, Windows etc) then be aware that you’re choosing to take a risk.

Android is the same on every phone


We’ve all seen those arguments where someone jumps on a forum thread or comment section to complain about how awful Android is and it transpires that they’ve been using an HTC Wildfire, a Samsung Moment, or some other budget release. Google has been working on improving the Android experience and optimizing its services so that you don’t need cutting edge hardware to enjoy the platform, but there are limits. If a manufacturer puts together a shoddy phone, slaps its own user interface over the top, and then the carrier fills it with bloatware then it’s not really representative of Android.
You wouldn’t buy an iPhone 3G/3GS and expect it to perform like an iPhone 5/5S would you? The lack of restrictions on Android is a generally a good thing because you get loads of different devices at different price points. The inevitable downside to that is that there will be some duds. Even a small amount of homework and a cursory glance at review scores will guide you towards a decent Android phone and you don’t have to spend big (check out Nexus series and new moto series from Motorola).

Android needs a task killer


If I ate a donuts every time I saw a forum argument about whether you need a task killer on Android then I’d be a bed-ridden whale by now. In the early days we all bought into this, the top task killer app is closing in on half a million downloads and there are many, many others that do essentially the same thing. Then a few people started questioning whether those task killers were really saving us battery life or improving our smartphone’s performance?
There are some compelling arguments against using task killers, like this one at Lifehacker. When I stopped using a task killer there was a noticeable improvement in both battery life and stability, so I’ve never used one since and I’ve never missed it. The appeal is obviously the idea that you can be proactively improving your smartphone, but unless you’re dealing with a dodgy app it’s probably not making the difference you think it is.
It could be the placebo effect that’s convincing you a task killer is helping. Try life without it and see if you can feel the difference.



There are plenty of other myths out there about Android and mobile devices in general. We could have talked about battery calibration, or the idea that fragmentation is a problem that’s unique to Android. What are the Android myths that annoy you?

Friday, November 15, 2013

Warning : Your smartphone can reveal your PINs


iPhone pass code is one if the most in-secure security options available
 as compared to Passwords in Android.



Smartphones have become part of our daily life, but it can be dangerous and can be used to reveal our  PIN s.

A team of researcher in University of Cambridge found that numbers entered using number only soft keypad could be identified. They used a program called "PIN Skimmer" for this purpose. The software uses Smartphone's front facing camera and mic to see your face and to listen keypad clicks as you type. They used Samsung Galaxy S3 and Nexus S smartphones to carry this test.

According to research the microphone is used to detect the touch events as the user enters the pin. In effect it hears the clicks the phone makes as the a user presses a button on soft number pad. The camera then estimates the orientation of the phone as the user is doing this and "correlates it to the position of the digit tapped by the user.

"We watch how your face appears to move as you jiggle your phone by typing" said Ross Anderson, professor of security engineering at Cambridge University. And more important is "It did surprise us how well it worked" he told. When trying to work out four-digit Pins the program was successful more than 50% of the time after five attempts. With eight-digit Pins the success rate was 60% after 10 attempts.

Many smartphone users have a Pin code to lock their phone but they are increasingly used to access other types of applications on a smartphone, including banking apps. iPhone s have only option of pin codes as security lock and is more easy to break security in this way.
This raises the question of which resources should remain accessible on a phone when someone is entering a sensitive PIN, say the report's authors.
Earlier this year, another security flaw allowed malicious third-party apps to gather data from the smartphone's accelerometer sensors and used it to guess PIN codes and screen lock patterns. Have you ever experienced any similar security issues with your smartphone.? Please share your feedback. 
Suggestions:
- Use finger print sensors (becoming available on iPhone 5S and new Droids) and facial recognition for Financial apps.
- Using large numbers for pin code, but it would be hard to remember.
- Use more complex pin codes or randomize the position of the digits.


Source: Phone arena

Sunday, November 10, 2013

Microsoft CEO candidate could bring Office to iOS and Android

Stephen Elop, a candidate to replace Steve Ballmer as Microsoft Corp.’s chief executive officer, would consider breaking with decades of tradition by focusing the company’s strategy around making the popular Office software programs like Word, Excel and PowerPoint available on a broad variety of smartphones and tablets, including those made by Apple Inc. and Google Inc., said three people with knowledge of his thinking.
Elop would probably move away from Microsoft’s strategy of using these programs to drive demand for its flagship Windows operating system on personal computers and mobile devices, said the people, who asked not to be identified because the 49-year-old executive hasn’t finalized or publicly discussed his analysis of the business. Most of Microsoft’s software has been tied to running on Windows.
Stephen Elop resigned as Nokia’s CEO when the sale was announced, and said he would become head of a new Microsoft devices unit responsible for hardware such as the Surface tablet and Xbox game console. Photographer: Casper Hedberg/Bloomberg
Oct. 22 (Bloomberg) -- Warren Buffett, the billionaire chairman and chief executive officer of Berkshire Hathaway Inc., says Bill Gates's focus on philanthropy means there is "zero" chance the Microsoft Corp. co-founder will return to the company as CEO. Buffett speaks with Betty Liu on Bloomberg Television's In the Loop." (This is an excerpt from the interview. Source: Bloomberg)
Microsoft became the world’s largest software provider under Ballmer and co-founder Bill Gates by making Windows-based PCs running Office applications an industry standard. When the Redmond, Washington-based company failed to come up with hit Windows-based phones and tablets, that left it with little role in the mobile market. Its refusal to adapt Office for Apple and devices based on Google’s Android operating system hasn’t helped its software usage.

Microsoft Experience

As he formulates some broad strategic outlines for Microsoft, Elop is drawing on his years as CEO of Nokia Oyj, where he showed he wasn’t wedded to homegrown software by canceling the company’s then-dominant Symbian phone software in 2010, said the people. He is also leaning on his previous experience as a Microsoft executive, where as head of the Office division he pushed the company to enhance and find new ways to sell the software, said the people.
Microsoft, which is shifting from software to focus on hardware and services, is searching for a new CEO after Ballmer said in August that he would retire within a year. Elop and Ford Motor Co. CEO Alan Mulally are among the external candidates in the interview process, as are three insiders -- strategy chief Tony Bates, enterprise software chief Satya Nadella and chief operating officer Kevin Turner -- people with knowledge of the process have said.

Joining Microsoft

Elop is set to join Microsoft after agreeing to sell Nokia’s handset business to the software maker for $7.2 billion in September. He resigned as Nokia’s CEO when the sale was announced, and said he would become head of a new Microsoft devices unit responsible for hardware such as the Surface tablet and Xbox game console.
Elop’s assumption is that Microsoft could create more value by maximizing sales of Office rather than by using it to prop up sales of Windows-based devices, said two of the people with knowledge of his thinking. Market-research firm Gartner Inc. projects PC shipments will fall 11 percent this year.
Doug Dawson, a spokesman for Nokia, declined to comment or to grant an interview with Elop.
“We appreciate Bloomberg’s foray into fiction and look forward to future episodes,” said Frank Shaw, a spokesman for Microsoft.
Microsoft’s Windows division reported that revenue rose 4.6 percent to $19.2 billion in the latest fiscal year, which ended June 30. The unit that includes Office and other corporate software products saw sales rise 2.5 percent to $24.7 billion. Microsoft scrapped that reporting structure for the current fiscal year and now reports earnings based on devices and software for consumers as well as enterprises.

More Focus

Besides emphasizing Office, Elop would be prepared to sell or shut down major businesses to sharpen the company’s focus, the people said. He would consider ending Microsoft’s costly effort to take on Google with its Bing search engine, and would also consider selling healthy businesses such as the Xbox game console if he determined they weren’t critical to the company’s strategy, the people said.
Earlier this week, investors drove Microsoft shares to their highest price since mid-2000, after Nomura Holdings Inc. analyst Rick Sherlund said the sale of Bing and Xbox, along with other moves, could lift fiscal 2015 earnings by 40 percent.
“Microsoft is trying to do too much, and these assets add no clear value to the overall business,” wrote Sherlund, who added that he thought Mulally was most likely to get the nod to replace Ballmer.
During his earlier tenure as a senior Microsoft executive, Elop cut a deal to offer Office on Nokia’s Symbian phone software. In 2010, Microsoft added free, scaled-down versions of programs such as Word and PowerPoint that anyone could access via the Web -- a controversial move given that Office is Microsoft’s largest and among its most profitable business.
He also oversaw the development of Office 365, a hosted version of the suite for customers who prefer to pay an annual subscription for Web access rather than buying the software outright.

Nokia Pointers

At Nokia, Elop cut 40,000 jobs and reduced operating expenses by 50 percent. While Microsoft doesn’t face the same cost constraints, Elop would probably impose job cuts and belt-tightening to create smaller teams, said the people.
Elop’s Nokia efforts also point to his focus on what a customer can do with a product rather than on its underlying operating system, said the people with knowledge of Elop’s thinking. In 2011, Elop discontinued Symbian, which was pervasive, yet was fast losing share to Apple’s iOS and Google’s Android. Instead, he forged a partnership with Microsoft to develop phones based on Windows Phone software as he said it offered the best chance for Nokia to make unique devices.
Another clue to Elop’s thinking comes from his handling of Nokia’s mapping and location-tracking software, which is considered a valuable asset, said the people. Rather than use the software to differentiate Nokia’s phones with features such as reliable turn-by-turn driving instructions, he made it into a standalone software business called Here. The product now powers the location services in some Amazon.com Inc. devices.

Thursday, November 7, 2013

The Complete Guide to Smarter Social Sharing on Mobile: Buffer for Android and iPhone

As the Buffer team grows we’ve been able to make some awesome adjustments to our mobile apps, including some great new features. In case you missed some of the recent additions, I’ve collected a run-down for you of how they work in our Android and iPhone apps.
We’ve also included a few features that are easy to miss and might be a good bonus, which should make your Buffering much easier. Look for them towards the bottom of the post!

Getting started with Buffer on mobile

If you don’t have our app installed on your phone already, you can download the iPhone version from iTunes or the Android version fromGoogle play.

Add your accounts

When you open up the app, you’ll be able to sign up with one of your social network accounts: either Twitter, Facebook or LinkedIn. Just tap the network you want to sign up with and login to give Buffer access to your account.
iphone sign in
Once you have accounts connected, you can add more with the link at the bottom of your accounts list.
android_connect_account

Using Buffer to manage your updates on the go

Sending your first update

Get started by adding your first update from the mobile app. On Android, tap the pencil icon and you’ll see a new post screen where you can type your update, attach photos, choose a time to post and select the accounts you’d like to send it to.
android_first_update
When you’re done, tap the green Buffer button to add the update to your queue, or tap “Share Now” to send it right away.
iphone_first_update

Managing your updates

Keep an eye on how well your posts are doing by tapping the analytics tab. Under each post you’ll see the interactions for each post you’ve sent.
android_basics
Tap on the Buffer tab to see your queued posts. You can tap a post to edit it, or tap and hold with your finger to drag and drop.
iphone_basics

What’s new: Twitter auto-complete and custom scheduling

Our new features have made both of our mobile apps faster to use and more robust replacements for Buffer when you’re away from your desk. You can now add updates to your Buffer account more quickly and with more control.

Twitter autocomplete

We recently introduced a Twitter autocomplete feature that’s not only fast, it’s smart too. When you’re typing an update in one of our mobile apps, just type an @ symbol and start typing letters after it. Autocomplete will jump in and suggest some usernames for you to choose from:

Custom Scheduling

Another really exciting new feature we introduced recently is the ability to choose a specific date and time for your update, rather than adding it to a slot in your Buffer queue.
In the iPhone or Android app, tap the clock icon to set a time and date for your update to be sent.
When you’re done, you’ll see that your custom-scheduled posts are shown with a grey background behind the chosen time, so you can easily differentiate between these and your normal Buffer posts.

New networks

With our recent additions of Google+ and LinkedIn company pages, you can now have up to 7 types of accounts connected.
With a free Buffer account, you can connect one profile or page per network. This means you can share content to Twitter, Facebook, LinkedIn, Google+ and App.net all at the same time.
If you sign up for an Awesome account, you can pick and choose any 12 profiles from all of the types we have on offer:
  • Twitter profile
  • Facebook profile
  • Facebook Page
  • Google+ Page
  • LinkedIn profile
  • LinkedIn Page
  • App.net profile
To connect a new account in the iPhone app, slide open the menu on the left and swipe to the bottom of your accounts list. Tap on “Connect an Account” and choose the social network you want to add:
iphone_accounts
From here you’ll be taken to the relevant network to login and give Buffer access to your account. Then you can choose which profile or page you want to add.

7 bonus features you might have missed

Our mobile apps have some really cool existing features as well, that are easy to overlook. I wanted to highlight a couple of these in case you hadn’t seen them before.

1.) iPhone: Shake-to-shuffle

One of my favorite iPhone app features is that you can shuffle your Buffer queue by shaking the phone. Just open up the app to show your queued updates and shake the phone in your hand.
shuffle
You’ll see a confirmation message, and once you tap “Yes” your updates will be shuffled randomly. This is super handy if you share a few quotes from the same article or a few links from the same site in a row, and you want to mix them up.

2. Analytics

In the iPhone app we have a tab for your analytics, where you can see the interactions each of your posts has received. Just open up the app and tap on analytics at the bottom of the screen:
analytics

3. Android: Share from any app

On Android, our app takes advantage of the built-in share menu that shows up in most apps, to let you add updates to Buffer from anywhere on your device. Once you have Buffer installed, just tap the share menu inside another app like your browser or Pocket and tap on Buffer to send an update to your Buffer queue.
Here’s an example of how this looks when sharing from Google Chrome:
share-from-chrome

4. Schedule Native Retweets

In the Twitter for Android app, the share menu lets you send a tweet straight to your Buffer queue—where we turn it into a native retweet.
retweet-via-buffer

Other ways to share from mobile

5. Infinite Buffer’s Windows Phone app

Grab the Infinite Buffer Windows Phone app to keep your Buffer updated on the go.
windows phone app

6. Buffer for BlackBerry

If you have a BlackBerry device, you can keep up with your Buffer account using our BlackBerry app.
blackberry

7. Schedule Buffer updates straight from Echofon

If you’d rather have Buffer right inside your Twitter app, our Echofon integration is for you. Grab Echofon for iPhone or Android and you can add tweets to your Buffer account without leaving the app.
You can even schedule your Retweets with Buffer, from right inside the Echofon app.