LightBlog

lundi 16 janvier 2017

Google App Prepares to add Support for making Payments through Google Assistant

Google Assistant is proving to be rather useful with its robust Google services integration. Plus, with the expanding availability of third-party APIs, the platform is shaping up to make for a killer Home Assistant. But the success of Google Assistant does not lie with its more complex functionality, rather it begins and ends with how it can handle the most basic tasks.

Currently, the service lacks the ability to handle to-do lists, reading notifications/texts from your phone, or adding events to your calendar. But from what we can discern from an APK teardown of the latest versions of the Google App, Google's fledgling Home Assistant service seems to be adding one key functionality in the near future: the ability to directly make payments.

Although a teardown can provide valuable information regarding upcoming features, it is entirely possible that these features may not make their way into the final product. Do not take these teardowns as proof that a feature will be added, but rather as a hint of what could be coming.


Making Payments through Google Assistant

Google App version 6.11.13 beta is now rolling out (which you can grab over at APKMirror), but the strings found below have existed for a few versions before this one. Currently, the only functionality that is available to users can be found in the Google Home app, and as you can see – making payments is not one of them.

But as shown in strings reproduced below, the Google Assistant is preparing to add support for making payments through the service.

Google App Teardown

    <string name="assistant_payments_preference">assistantPayments</string>    <string name="assistant_settings_payments_add_new_address">Add new address</string>  <string name="assistant_settings_payments_address_address_line1">Address line 1</string>  <string name="assistant_settings_payments_address_address_line2">Address line 2 (Optional)</string>  <string name="assistant_settings_payments_address_gate_code">Gate code (Optional)</string>  <string name="assistant_settings_payments_address_gate_code_too_long">Max %1$d characters</string>  <string name="assistant_settings_payments_address_list_title">Delivery address</string>  <string name="assistant_settings_payments_address_phone_number">Phone number</string>  <string name="assistant_settings_payments_address_required_field">Required field</string>  <string name="assistant_settings_payments_address_save_error">Error saving address.</string>  <string name="assistant_settings_payments_device_title">Shared devices</string>  <string name="assistant_settings_payments_done_button_text">Done</string>  <string name="assistant_settings_payments_edit_address">Edit address</string>  <string name="assistant_settings_payments_enabled_title">Pay through your Assistant</string>  <string name="assistant_settings_payments_instrument_item_disabled">Disabled</string>  <string name="assistant_settings_payments_instrument_item_expired">Expired</string>  <string name="assistant_settings_payments_instrument_item_inapplicable">Inapplicable</string>  <string name="assistant_settings_payments_instrument_item_needs_fix">Needs fix</string>  <string name="assistant_settings_payments_instrument_item_unknown">Unknown</string>  <string name="assistant_settings_payments_instrument_list_title">Payment method</string>  <string name="assistant_settings_payments_oos_screen_description">Need help? Contact the Google Support Team for assistance</string>  <string name="assistant_settings_payments_oos_screen_title">"Payments isn't currently available on the Google Assistant"</string>  <string name="assistant_settings_payments_save_button_text">Save</string>  <string name="assistant_settings_payments_setup_accept_button_label">Accept</string>  <string name="assistant_settings_payments_setup_device_description_p1">"You'll soon be able to pay for things when you use Google Assistant, including on the following shared devices."</string>  <string name="assistant_settings_payments_setup_device_description_p2">Customize which of your shared devices are allowed to help you with payments and other personal tasks, like your calendar and services. You can also turn "Personal results" on or off later in your Assistant settings. <a href="http://ift.tt/2iumv2f">Learn more</a></string>  <string name="assistant_settings_payments_setup_devices_title">Confirm shared devices</string>  <string name="assistant_settings_payments_setup_instrument_list_title">Choose card</string>  <string name="assistant_settings_payments_setup_next_button_label">Next</string>  <string name="assistant_settings_payments_setup_shipping_address_title">Choose address</string>  <string name="assistant_settings_payments_setup_splash_screen_button_label">Get started</string>  <string name="assistant_settings_payments_setup_splash_screen_subtitle">Set up payment info and addresses for your packages, groceries, and other purchases</string>  <string name="assistant_settings_payments_setup_splash_screen_title">Set up payment &amp; delivery info</string>  <string name="assistant_settings_payments_setup_terms_of_service_title">Terms of Service</string>  <string name="assistant_settings_payments_summary">Manage payment methods and addresses</string>  <string name="assistant_settings_payments_title">Payments</string>  <string name="assistant_settings_payments_update_error">Error while updating payments settings. Please try again.</string>    <string name="common_device_personal_info_permission_summary">Allow this Google Home to read out your private info like your calendar and flights, display your photos on TV, and help you with orders, reservations, and payments</string>    

The string "you'll soon be able to pay for things" when you use Google Assistant indicates the service is not yet live (as none of us using Assistant have found evidence of the service being live), but it soon will be. Plus, you'll be able to specify which Assistant-connected devices will be able to participate in making payments.

In order to make payments, of course, you need to specify what specify a delivery address for your items. Billing is of course handled through Google's APIs for adding payment methods. It'll be interesting to see exactly how this functionality will work – but we're hoping it will work as well as Amazon's Alexa when placing orders through voice.

We have also found evidence that this functionality is at least partially implemented in the APK file, as we have found numerous references to layout files that set up the payment interface. It is possible that the functionality is baked in, but Google is still working on the back end to make the service work before rolling it out to everybody.



from xda-developers http://ift.tt/2jhhyHe
via IFTTT

Google Play Revenue Grew 82% in Q4 2016 YoY; Line and Tinder Dominate Revenue Charts

Apps on our smartphones are essential ingredients of what makes our phones smart in the first place.  Apps and App Stores are big money too. The sheer popularity and usage of smartphones and applications have driven up our needs and as a result, the revenue streams of people involved behind popular apps.

App marketing agency Sensor Tower have released their 'Top Apps of 2016' report, giving us insight into the current top dogs in terms of downloads and revenue. This data is also presented on a combined as well as individual basis.

The report notes that Q4 2016 was a healthy period for app and game developers for iOS and Android who chose to distribute their offerings through the Apple App Store and Google Play Store. This period saw an increase of 67% in net revenue worldwide year-on-year, growing from ~$5.2 Billion in Q4 2015 to ~$8.7 Billion in Q4 2016. Individually, the 60% growth rate for the Apple App Store was lower compared to the 82% growth rate for the Google Play Store, but actual revenue still stood higher for App Store at $5.4 Billion versus the $3.3 Billion for Play Store. A whooping 19.2 Billion downloads were also completed across both the platforms just in Q4 2016!

For the Top Earners of Q4 2016 within the category of "apps" (non-games), the crown is held by popular messaging app LINE. LINE's revenue streams evolve from its core messaging use to a wide gamut of add-on services like sticker packs, social games and even a music streaming service. LINE is the top earner overall and in Play Store, and ranks in on number 2 on the App Store. The second spot on the Play Store is held by Tinder, the popular casual 'dating' app. Apple App Store's highest earner is Netflix, which surprisingly comes out at number 9 on the Play Store. This divide is likely caused by the differences in revenue sharing with Apple and with Google as the Apple App Store is a lot more restrictive on the mediums that apps can use for monetization.

Top Downloads of Q4 2016 are unsurprisingly, some of the most common apps that one can see around. Facebook, WhatsApp, Messenger, Instagram, Snapchat hog the top few spots. Some of the entries on the top list of the Google Play Store should not ideally be as popular due to their borderline-malware nature and detrimentl use-case scenarios. Also (not so) surprisingly, MyJio grabs a spot on the list. MyJio is the app needed to get a free Jio sim card in India (you need to generate a barcode for the sim card request, through the app). This is in line with the vast demand that Reliance Jio did see in India post the demonetization move in the country.

The situation of Q4 2016 with regards revenue and downloads largely extends on to the entire year of 2016. For Google Play download numbers, it's worth noting that pre-installed apps and their subsequent updates are not counted, which is why we do not see any Google-made app not making it to the Play Store top charts list from Sensor Tower.


The insights provided in the report shed light on how the platforms differ from each other and how tightly/loosely they are controlled by the companies in charge. App Store users usually downloaded social media based apps, while Play Store users install vile apps like CM Security and Clean Master, apps that can do more harm than good under the pretext of improving devices. Says a lot, doesn't it?

What are your thoughts on the report? Let us know in the comments below!

Source: Sensor Tower



from xda-developers http://ift.tt/2j0yYqE
via IFTTT

dimanche 15 janvier 2017

XDA-Developers Urges OnePlus to Comply with GPLv2 and Release Kernel Sources

While XDA-Developers, and a large sector of its user base, have been routinely impressed by OnePlus' commitment to supporting the developer community, we've been anxiously awaiting the release of kernel sources for the OnePlus 3/3T since the release of Android Nougat on December 31, 2016.

OnePlus has not provided such sources even though they've already rolled out the release of the official OTA on several countries, and users have been using VPNs or manually installing the update to upgrade their devices as well. While the company was extremely swift in its original release of kernel sources shortly after the device launch, they haven't been as keen to upload their sources since. This isn't a mere inconvenience for the developer community, it's also reprehensible as OnePlus is effectively violating the General Public License by not providing the GPLv2 licensed source code in a timely manner.

Suggested reading: XDA-Developers and the GPL

We are fond of the GPLv2 at the XDA, and I have personally made it my task to call out OEMs who do not comply, from repeat-offenders like Xiaomi to the more disappointing cases like Motorola (and Lenovo). We also do give credit where credit is due, but a late release of the necessary source code does not correct the fact that the sources should be made available as soon as possible. The GPLv2 'requires' companies to release any modifications to the 'GPLed' code base (the Linux kernel) that they ship to their customers. That requirement is what allows communities like XDA to thrive, and the viral nature of the GPLv2 has made Android what it is.. Releasing sources is not just part of the spirit of Android nor for the benefit of developers only, as OnePlus itself has benefited by developing a kind of "developer-friendly" reputation with its devices, the latest of which are informally dubbed the "successor to the Nexus line" by vast numbers of users. While OnePlus has worked with XDA in looking for ways to expand developer support for their devices, as well as helping developers get their hands on hardware, we see this latest behavior on their end as something that goes against the interests of the community and, quite frankly, OnePlus'  best interests as well.

READ: Francisco Franco's Full Statement Regarding OnePlus and Sources

The Linux Kernel is under an utilization license called GPLv2, which, among other rules, requires anyone who modifies, or links proprietary code to GPL licensed functions, and releases the Kernel binary to the public, to release the source code. Any Android OEM is bound by this rule and MUST release the exact same code tree they ship the binary with.

The majority of the OEMs do not comply with this simple rule, and we've fought for years, but little has changed. Names like Meizu, Xiaomi are among the worse. Others release the source code in tarballs, HTC, Samsung and LG. The source code is there, but we have no commit history, no commit messages, no nothing. We can't see in detail what they've done, and bugs introduced are hard to find/fix because we have no context. The best ones are Motorola, Sony. They provide the entire tree + commit history + detailed commit messages, and everything is offered on github so anyone can easily fork/inspect what they've done. Google isn't an OEM, but it's the undisputed champion. They are VERY detailed in what they do and release the sources in a timely fashion. It's just perfect.

One Plus is a mixed bag. They do release their Kernel sources on github, but it's not without its faults:
1 – They usually take some sweet time to update their trees when there's an update. They say it's because the otas aren't yet 100% globally released, so they won't commit before that. It's a very lame excuse;
2 – They have the entire commit history from Qualcomm/CodeAurora, but all their modifications are a big stash of their changes, provide no information what-so-ever, so we have to read their, sometimes, big 50k line commit to understand what they've done. It's bad;
3 – They barely follow any Linux Kernel code standards and sometimes it's hard to read or understand their goals. There are clear and written code practices for Linux open source contributions, they should make an effort to follow them;
4 – They say they are a development friendly company and they pledged for Zero-day Kernel source drops, but they really just go half way, while they do have _extraordinary_ developer support with free hardware, their open source shenanigans hinder it and leave us hanging while they decide it's a good time to publish the source code (or not). It's frustrating needing to constantly remind them about this;

At this point you might think "Why do you care so much?". For starters they gave me free hardware, so I want to work on it. Then their devices (specially the One Plus One and the 3 and 3T) are really amazing. The OPO was being worked on by the Cyanogen OS team, and they really did a terrific job with their open source contributions. They even pushed patches before the otas were released, gave us time to test, get community feedback and sometimes even send them bug reports before the production otas were released. The 3 and 3T are terrific devices, with A LOT of users, and we want One Plus to keep working on new fantastic devices, while being as developer friendly as they think they are.

I sent them, privately, a list with suggestions on how to tackle the points above, which I'll try to condense below:
1 – Kernel source needs to be publicly released as soon as the otas are released, it doesn't matter if it's a 5% roll-out, or 100%. New public binary is out, source needs to be out, period, end of story;
2 – For every code they work on they SHOULD write detailed and separate commits with detailed messages explaining what the code changes are, what they are for, what they fixed/improved and if needed, comparisions of pre-post patch (if it's warranted like power consumption reductions, or performance improvements). Without this we're basically just left in the dark trying to guess what was the goal of the code;
3 – Easy, read the Linux Kernel "how to contribute" docs and follow them. Not only it helps them maintaining better code quality, but it helps us understand the code better;
4 – Stop pretending everything is amazing on their open source movement, and start acting on it. There are a lot of good people trying to work on their products, if you support us with hardware, then do your best with the software too;

I do have to end with a positive note, I can't thank them enough for providing me and others with free hardware. Barely any OEM does this and I hope they keep doing it since that's a differentiation point and gives them a lot of value.

– Francisco Franco

Prominent developers with many followers are speaking out against OnePlus' lack of source releases, with a notable example being XDA Recognized Developer franciscofranco of Franco Kernel fame. He has voiced his frustration on Twitter , and he's not alone — we've also reached out to OnePlus in order to pressure them into releasing the Nougat sources, but there was little our direct contacts could do past passing on the pressure to internal teams. You can read the full statement Francisco Franco provided to XDA by expanding the toggle above. We haven't heard much in the way of explanations from OnePlus, only excuses and expected responses, which is typically the kind of comeback we hear when OEMs are pinned down on why they aren't complying with the GPLv2, which they implicitly agree to follow in exchange for the ability to use the licensed base. If we are to be specific, it doesn't matter whether the Nougat OTA/release has reached global saturation, nor any other excuse, just like it didn't matter that Xiaomi's source code could have tipped future devices; OnePlus is compelled to make GPLv2-licensed sources available upon request, and many members of the Android community have been asking for it.

We can't know for sure what's taking them so long to upload their due sources – after all, the software is already built and released – and the optimist in me hopes that the code will be provided alongside the camera blobs we've been waiting for. That said, we know not to get our expectations up, and OnePlus' actions have been damaging the tremendous progress the OnePlus 3 and 3T have made in terms of developer support. Without Nougat sources, for example, we won't get an official Nougat TWRP ironed out, custom kernels for OxygenOS 4 ROMs won't become available and custom ROM diversity will stagnate and suffer. Moreover, much of the trust and enthusiasm OnePlus has built behind their devices will get irreparably harmed, particularly if the issue persists or such reluctance to comply with the GPLv2 manifests itself in the future.

We hope OnePlus manages to provide their due sources swiftly. While we initially hesitated to publish this article due to the unpredictable nature of this matter, after speaking to key contacts we have reached the conclusion that this might not be reversed without a consolidated outcry from the community. We might be very fond of OnePlus' hardware and many of their practices and community outreach attempts, but we are determined to call out any OEMs' dangerous practices and poor decisions — OnePlus is no different. While we appreciate the quick response times and turnarounds they've provided in the past, this is one of the most sensitive topics for the XDA community and our patience has worn thin.

XDA encourages readers and OnePlus 3/3T users to help make the voice of the community heard through submitting feedback via their form or the OnePlus community app and by messaging OnePlus representatives inquiring about the matter. Please keep all requests respectful, but if you do care about the GPLv2, the spirit of Android, the development community of your OnePlus 3/3T or the company's future among enthusiast circles, please help us out by carrying the message.

Further reading:



from xda-developers http://ift.tt/2jyHe1C
via IFTTT

XDA Spotlight: Abusive Gym Reminder, an Open-Source App that Yells at you if you don’t Workout

Do you like being yelled at? Are army training boot camps your idea of a good time? Does being screamed at make you more motivated? Then we have have just the app for you. Say hello to the open-source Abusive Gym Reminder.

This is an an application whose sole purpose is to send you abusive notifications everyday you do NOT go to the gym. Surprisingly, it actually works – just not how I thought the developer intended it.


Preferences Screen

The Workout Reminder for Masochists

The application is quite simple to use. It starts you off by requesting you to place a marker on Google Maps designating the location of your gym (after the initial setup is complete, you can always return to the settings page and add more gyms if you want.) Next, the application asks you how many days a week you aim to go to the gym. Once you've completed the set-up process, the application will begin monitoring your location to see if you are keeping up on your promise to actually go workout.

Abusive Gym Reminder works by using creating a geo-fence around your gym(s) of choice. The location that you chose during setup acts as the center point of the geo-fence. When your device enters the geo-fence, that tells the application that your device (and by extension, you) has arrived at the gym. The application allows you to specify the radius of the geo-fence circle in the settings; I lowered the default down from 200m to 150m because 200m seemed like a bit overkill considering the size of my gym.

Daily Gym Attendance

When you enter one of the defined geo-fences, the application logs both how many times you enter the area as well as how long you have been present in that area. The application then provides a nice summary of all your historic gym data including your longest gym attendance streaks and the most days you have missed in a row. You can also checkout individual days to see how many times you went to the gym on a given day.

But when you actually miss a gym day is where the real fun begins. As its name implies, the Abusive Gym Reminder will send you a notification with a pre-defined "abusive" message in it that chastises you for neglecting a promised workout. The messages are displayed as notifications and are also displayed in the application's "Inbox". You can also send a "Test" message when you start the application for the first time to see an example. I noticed immediately how customized the notification messages seemed, and it definitely gave the application a very polished feel. Apparently, the messages are taken from an internal database of crowd-sourced verbally abusive comments. You can even submit your own insults on the developer's Github page.

I personally found that the abusive notifications were not too intrusive – only 1 message per day for each day you missed the gym.  The notifications are rather humorous, and after checking out the settings I was pleasantly surprised to find that I could even set the level of "Abuse" that I received each day I forgot to workout. Of course, I set it to the most abusive level because if you are going to abuse someone to go workout – I say do it properly. When I thought about this feature in some detail, I recognized that it's rather cleverly implemented. If, for example, you have kids who are old enough to read, you don't want your phone displaying a string of profanity as long as your mother's arm to ruin their innocence.

The settings for the level of abusiveness are as follows:

  • Passive Aggressive
  • Abusive
  • Abusive (Mature)

Pipit, the developer of this application, has a great sense of humor as when you set the application to its most abusive level the screen text changes to match the new "Mature"  mode as shown below:

You can also customize when you get the notification which nicely coincides with when you were supposed to go the gym – you know for that 'kick 'em while they are down' affect. On a more practical note though, not everyone goes to the gym at the same time so having the message pop up in the morning when you usually go the gym in the evening wouldn't make sense, but the settings are there so if you want some abuse in the morning to motivate your afternoon or evening gym sessions then Abusive Gym Reminders has got your back.


Hard to Take Seriously

Weekly Details Screen – A Bit Confusing

There are a few usability issues that I had with "Abusive Gym Reminder" application though. For instance, you can edit gym data for the current day and specify if it was a gym day or not – however it isn't immediately obvious how to do so. I accidentally discovered that you need to tap on the circle day icons on the main screen. When you do so, up pops a little box that allows you to change values, however on my test device (the Nexus 6P) –  the text is quite small and you have to tap just right to get the values to change. I also noticed that no matter what day I tapped on – be it Wednesday or Thursday – only Friday's box would show. At the time of writing it was a Friday, which makes sense but was a little confusing at first.

Overall, I enjoyed using this application – but sadly for the wrong reasons. I started missing the gym on purpose and setting up "Fake" gyms in countries that I would not be visiting just so I could see what the next message would say. It was a laugh to see your phone giving you some abusive message and I thoroughly enjoyed it. In a weird way, it made my phone feel like one of those old grandpa characters on television – yelling at the kids to get off the lawn. I ended up setting the application to send the messages before I was supposed to go to the gym, so it kinda worked as a kick in the butt to get myself down to the gym that day, rather than its intended purpose which is to berate me for already missing my workout. But hey, at least it gets you to the gym, right?

I'll wrap this XDA Spotlight up by saying you should definitely check this application out if you are a serial gym procrastinator. It does indeed give you a little extra push to get yourself to the gym, at least in my experience. If you are big into fitness and you regularly go to the gym already, then this application will probably only serve to give you a chuckle each day. It doesn't store enough detailed information about your gym visits to be any value to gym rats, but for us mortals who have trouble just getting out of bed on a wet cold day, it could give us just the right amount of motivation to make it to the gym.


Download Abusive Gym Reminder from the Google Play Store!



from xda-developers http://ift.tt/2iukgHc
via IFTTT

samedi 14 janvier 2017

Which Rumored Device Do You Plan to Upgrade This Year?

We're entering full swing into the season of new smartphone as Mobile World Congress 2017 approaches. This means we get more leaks, more rumors, and thus more smartphones.

Knowing how the past smartphones performed, the OEM's track record, and what the future leaks and rumors point towards, we ask you:

Which rumored device do you plan to upgrade to this year? What new features, additions, or upgrades do you look forward to in your next smartphone purchase? What price point are you aiming for in your next smartphone? If you do not plan on upgrading, why?

Let us know in the comments below!

Image Credit: Nokia 1100 Concept



from xda-developers http://ift.tt/2jw8Y7e
via IFTTT

Using Google Maps in a Third World Country

Nothing is more annoying than when Google Maps gives you the wrong directions, lists incorrect business hours, or doesn't have updated street view photos. Of course, these are just everyday problems For Rawad who lives in Lebanon. Rawad took us for a drive to show us what it's like using Google Maps in a third world country.

You can often find yourself lost, as it sometimes takes years to update new roads. In Lebanon, some of the maps are showing data that is up to seven years old. The altitude data has a glitch wish causes it to constantly display inaccurate information. For one reason or another, Google does not allow you to download maps in Lebanon for offline use. These are just some of the problems you'll encounter in less privileged countries.

What are some of the common problems you find in Google Maps, for your area?



from xda-developers http://ift.tt/2jkAIOi
via IFTTT

Renders of Samsung Galaxy S8 with Headphone Jack and Stereo Speakers Leaked

There's a lot riding on the Samsung Galaxy S8. Not only does it have to become the next successful flagship from Samsung after the Note 7 debacle, it also has to thwart attempts from other Android OEMs who will be pulling out their own flagships in the same time frame. A failure at this period will give users other options to choose from, and Samsung seems to have realized this.

Previous rumors relating to the Galaxy S8 noted the removal of the 3.5mm headphone jack port. However, this aspect of the phone seems to have changed, if the latest leaks and rumors are to be believed.

GSMArena got their hands on 3D renders based on accurate schematics of the Galaxy S8 from a case maker. According to these renders, the Galaxy S8 truly embraces the curved display. The curves on the display now appear more pronounced and push the bezel out of sight. The Hone button continues to remain absent in the renders, further strengthening the rumor that the physical buttons have been done away with entirely.

The back of the device bears only a single camera. GSMArena suggests that the Samsung Galaxy S8 Plus variant will be the one sporting the dual camera setup. If true, this will lead to greater differentiation between the two models than one just being an over-sized version of the other. There is no fingerprint sensor to be found on the back, which builds up on the rumors that Samsung will be placing the scanner below the display.

The renders also depict what appears to be the 3.5mm headphone jack port, at the bottom. AndroidPolice notes a similar scenario with regards the presence of the headphone jack port, based on information received through an independent source.

Also to note, the renders show that there are two sets of speaker holes, one each at the top and bottom on the mid-frame. This suggests that the Galaxy S8 will feature stereo speakers.

The Samsung Galaxy S8 is reportedly set for launch on April 18th, but Samsung seems to be open to the idea of previewing the device earlier.

What are your thoughts on the Samsung Galaxy S8 so far? Is the device ticking the right boxes for you? Let us know in the comments below!

Source 1: GSMArena Source 2: AndroidPolice



from xda-developers http://ift.tt/2jkmSvr
via IFTTT