Confusing Intel Consumer Processor Branding in 2015

intel.web.720.405

Intel has added few more new naming schemes this year with their processor lineup, and it has been confusing to keep track of what exactly is what. I’m putting this together to set the record straight.

Intel has two main processor families:

  • Core processor family (go faster)
    • Core i3/i5/i7
    • Core M (ultra-low power, fanless, newly available in Q4 2014/Q1 2015)
  • Atom processor family (less power hungry, possibly fanless)
    • Atom x3/x5/x7

They have recently rebranded Rockchip processors into the Atom processor family as of 2015:

  • Atom branded Rockchip processors in the Atom processor family
    • Atom x3 ‘RK’ series

Celeron and Pentium Don’t Mean Anything

 

Celeron and Pentium CPUs can below to either of these Intel Core or Atom processor families, ever since 2013, rendering these brands useless. The only way to tell what is what is to lookup the CPU model on Intel ARK and CPU World.

For example:

  • Celeron N2820 – dual-core Atom processor family
  • Celeron 2955U – dual-core Core processor family
  • Pentium N3540 – qual-core Atom processor family
  • Pentium G2020T – dual-core Core processor family

This also means that you have two Celeron branded devices that perform very differently despite being at similar price points. This has been going on for a while now, but apparently not everyone is aware of this.

Atom Branded Rockchip Processors – 2015

As of MWC2015 (source Anandtech), they’ve also announced an Atom branded processor family of rebranded Rockchip processors within the Atom x3 lineup. These are low-end inexpensive processors for mobile devices mostly running Android that generally perform worse than and are less power efficient than their true Intel Atom equivalents.

Slide 7

References:

Turning off the Camera Swipe after Lolipop

I was recently asked this question about Lockscreen Policy working on Lolipop.

With Lolipop, lockscreen widgets are deprecated. However, lockscreen policy enforcement should still work, but it’s has gotten a lot more complicated. The disable widgets flag is no longer valid.

Trying to run lockscreen policy results in the following error in logcat:
12-17 14:36:02.622: W/DevicePolicyManagerService(545): admin com.wordpress.chislonchow.deviceadminkeyguard has null trust agent feature set; all will be disabled

Trust agents provide automatic unlock capability to Android, such as face, bluetooth or proximity unlock. I haven’t looked more deeply into it, but it is going to take more work to understand the new lockscreen flags and the trust agent integration to set the flags to disable the lockscreen camera, which does look like it is possible to do, even if it as as drastic as turing off trust agents in the lockscreen altogether (setting KEYGUARD_DISABLE_TRUST_AGENTS to 0 bypasses this logic).

For more reading, see the Android developer reference docs for DevicePolicyManager.

2014 – The Year Android Manufacturers Forgot to Make Good One-Handed Smartphones

Phones2014

Image generated from MobileDeviceSize

2014 is coming to a close, and that also means time for X’mas and gift giving, and maybe time to upgrade from an older phone. If you are an iPhone user, your choices are simple – the iPhone 6, or the 6 Plus? By now most people have figured out that the 6 Plus is too large for them, mostly because they can’t use it in one hand.

If you are an Android user, the choices are abundant as always. You have a lot of phones between the size of the iPhone 6 and the 6 Plus this year. Surely we can choose a flagship Android device this year that is passable for one handed use that compares to the iPhone 6, or can we? Well…

There are almost no new flagship phones available for one-hand use for the 2014 holiday season (in Canada, anyway)

One question everyone should ask is ‘how big do I want to go’. The bigger the screen, the more content it shows. Apple also picked their the mainstream model to be at 4.7″. But past this 4.7″ ‘ish’ screen, it is going to change the way you can use your phone. You are going to find that you will need to use the phone with two hands, because the on-screen elements are going to start to become out of reach.

If you pick a phone bigger than 4.7″ ‘ish’, prepare to give up being able to use the phone in one-hand. This is the threshold for one handed use. 

The top/bottom bezels of the iPhone 6 dominate the front of the phone much more so than the Nexus 5, and as a result the Nexus 5 squeezes in almost .3″ worth of screen estate without making the device significantly larger. Yes, it’s that hardware button. So I still would call everything up to the Galaxy S5 as a phone in this category.

So, up to around 5″ is still ‘okay’ for one-handed use

I have moderately large hands, and currently use a LG G2 with a 5.2″ display and very thin bezels. This is the largest I’d be comfortable with using in one hand – I’d even say it’s somewhat of a bit of a stretch for me.

What’s available this year for Android flagship phones at this size anyways?

When it comes down to what’s available, if you are going to get a carrier subsidized one-hand usable phone on the big 3 carriers. Well what sucks is that you have JUST TWO phones you can pick that are flagship devices at this size:

Samsung Galaxy S5 or Motorola Moto X (2014)

OneHandAndroid2014

Generated by from PhoneArena

Effectively we have no-shows from the likes of LG, Sony and HTC. The Moto X for some reason is ONLY available in the 16 GB variant with no memory expansion capability, which makes it tough to recommend. Samsung is crazy for putting hardware front buttons on a flagship Android phone.

So what if I don’t like the Moto X or the S5? 

Well, either get the last year’s flagship LG Nexus 5. Or the alternative is to go for one of the bigger phones, but at what cost?

The HTC One M8 and Xperia Z3 don’t have much larger screens than the Nexus 5 or the Galaxy S5, but they put more bezel at the bottom of the device. This means you have to stretch further to get to the top edge to the display.

Phones with curved edges and curved backs let you wrap your hand around them more ergonomically. Softer rubbery plastics are also more grippy than aluminum or glass, examples being the back material on the soft touch plastic Nexus 5 versus the slippery aluminum HTC One M8. The flatness of the Xperia Z1/Z2/Z3 can result in hand fatigue after a short time.

Phone bottom bezels being thick, edges being sharp, back being flat, and having a slippery material make the phone more difficult to use in one handed use.

Here is a neat study on how people typically deal with larger screen sizes, and the different hand grips people use. You are going to be sliding your hand on the back of the phone to reach for the different parts of the screen, which can be tricky. You can alleviate this a bit by putting on a non-slip case, but then you are adding bulk to the device, so be careful not to pick a really thick case if you can help it.

Getting a case can help you adjust to having to use a bigger phone

Ending words: Hopefully the manufacturers and carriers will come to their senses and start giving consumers viable choices for 4.7″ ‘ish’ sized phones with good specifications. 2014 has been somewhat of a disappointment.

Some Notes for Building Unofficial Ports of Android

Here are some quick notes of how to use other people’s work on Github when building unofficial Cyanogenmod or other custom Android builds.

Many unofficial device maintainers have a local_manifests xml file, which specifies replacement projects. See some documentation about local_manifests here: http://wiki.cyanogenmod.org/w/Doc:_Using_manifests

This modifies the repo command to tell it to pull in altered projects that should replace or add to the original set of projects you are working off, such as device specific files. Example here: https://github.com/bleached/android_local_manifest

Next, you want to look for the build patches, which maintainers typically put in the device specific folders (from the root folder, look in device common or the by the actual device name). For example, some maintainers may place the patches here: https://github.com/bleached/android_device_samsung_msm7x27a-common/tree/cm-10.1/patches

Ultimately how this is organized will vary by the maintainer.

Upgrading from a Galaxy Nexus

Galaxy Nexus

In the past month, Koodo mobile had a sale on the recertified Nexus 4 for $150 pre-taxes, so I finally pulled the trigger for an upgrade. I had been using the Galaxy Nexus for 1.5 years, having purchased it from Rogers when I switched to Wind mobile.

In short, when buying a new Android phone in 2014:

  • Look for 2GB of RAM or more
  • Buy from a major manufacturer, and be sure to check the disk speed (read and write)
  • Get a newer model with a power efficient chipset

Details

On paper, the Galaxy Nexus still has mid range specs: the second greatest version of Android with 4.3 Jellybean, had a 720p HD display at 4.65″, 1 GB of RAM, and a CPU/GPU that is on par with regards to performance. It would appear to be very close to the likes of the Moto G, which has rave reviews and has been gaining popularity because of its attractive price point of about $200 for the 16GB variant. What gives?

The Galaxy Nexus was a great phone for its time, but it had some glaring flaws. For me personally, what drove me to ultimately upgrade was:

  1. Lag, lag everywhere… Despite having all the right specs on paper, I was experiencing significant lag everywhere despite being pretty light on the phone.
  2. Battery life wasn’t enough for my usage patterns… I couldn’t make it through a workday without having to recharge my phone.
  3. Discontinued support… Grim outlook for 1 or 2 improving significantly in the near future

Let me explain…

  1. Lag: On a smartphone, in addition to making phone calls, you expect to be using Internet connected services. Those services run in the background and consume resources on the device. Android has come a long way since its conception, where the first device shipped with 100MB of available RAM. Now when it comes to the Galaxy Nexus, it may sound like 1GB has to be enough, increasing the amount by 10 times over the span of just 4 years. Unfortunately, this isn’t the case with the operating system consistently consuming more than half of what’s left. Out of the box, a portion of this memory is usually reserved for hardware components, notably the GPU, the radio baseband, and the camera – around 300MB worth. Now this number ranges depending on the device, but on the Galaxy Nexus, it was crippling the device performance with other services running on the phone. Once the phone starts running out of RAM, it actually has to work to remove things from RAM in order to keep doing what it’s supposed to. This process, called garbage collection, is one of the key contributors to stuttering in Android. The second contributor is – if applications can remain in RAM in a ‘standby’ state, they will be launched faster than if they had to be launched from scratch from a ‘cold boot’ from the disk, because RAM is much much faster than the disk memory. This means that this process is dependent on how fast the device can read from the disk memory. Unfortunately for the Galaxy Nexus, the disk memory is magnitudes slower than what its supposed to be, leading more more lag. On newer devices from major manufacturers such as Samsung, they make sure that the disk memory is quick enough. The same cannot be said for the likes of Huawei or no name brands. Despite Android 4.4 KitKat having lower requirements for RAM, I do not recommend any less than 2GB of RAM on a new smartphone, or it is guaranteed to be a mediocre experience. 
  2. Battery: While this isn’t a published spec, the Galaxy Nexus has a less power efficient package that results in an average of 1.5 hours of screen-on time in most scenarios. Smartphones in 2014 typically are capable of at least double this figure, but this is not a published spec. It is good to check review sites such as AnandTech for the WiFi browsing time, 4G browsing time, and 3G browsing time for the specific device. Newer models have newer chipsets, which are much more power efficient than older models. It is useful to know what chipset was released in the last while to know the difference. Or you can just go with a huge battery, but that also means you will end up with a bulkier device.
  3. Support: The Galaxy Nexus runs off a Texas Instrument CPU/GPU combination. Texas Instruments’ mobile division had gone belly up, meaning that there is no more software support from the manufacturer. Google stops their commitment for upgrading their software after 18 months. This means that the hardware issues in #1 and #2 will no longer improve with some sort of software fix. Here’s a good diagram by HTC (http://www.htc.com/us/go/htc-software-updates/).

HTC-Anatomy-of-an-Android

 

 

Android Launcher 3 Build from Eclipse (From 4.4.2 Source)

device-2013-12-25-230118

Work done

 

Do it yourself

  1. Use Git to pull down the latest Launcher 3 source:

    git clone https://android.googlesource.com/platform/packages/apps/Launcher3

  2. Import existing code into Eclipse (Android Project from Existing Code)
  3. Change the project build target to API level 19
  4. Add Android support libraries
  5. Build protocol buffers JAR from AOSP source. You will actually need to build the protoc binary as well. You need to know how to use ‘make’ have gcc available for the protoc binary, and Maven for the JAR: https://android.googlesource.com/pla…l/protobuf.git
  6. Use protoc binary built from step above to generate the BackupProtos.java file:

    protoc –javanano_out=src/ -I protos protos/backup.proto

  7. Rename the Android package (Android Tools->Rename Application Package) to one of your choice
  8. Add min SDK in a new ‘uses-sdk’ element in AndroidManifest.xml (works down to API level 17 without too many complaints in Lint, obviously stick to 19 to play it safe).
  9. Clean and run. BIND APP WIDGETS error can be ignored

References

Fabio Lo Brutto:
https://plus.google.com/+FabioLoBrutto/posts/KJeyKMBHVT7

Android Play Store Content Ratings are Almost Useless – Too Many Apps are Indiscriminately Rated for ‘Everyone’

Capture

A Mobile Casino Slot Machine App Rated ‘Everyone’

The app shown in the screenshot is Slot Machine Free Casino Slots, a free app on the Android Play Store. I am starting off with this offender because it highlights the severity of the issue.

This app is a slots machine simulator. Link to a YouTube trailer is here. Social features include logging into a Facebook or SOFTGAMES (game publisher) account. You can spend real money just like you can at a real slot machine. The part about gambling is where it is a gray area, because clearly this facilities real gambling and turns your smartphone into a mobile casino, as it allows users to spend real currency, but the app store is full of apps like this. The app at least should be rated with a ‘Medium maturity’ content rating.

Here’s a screenshot of their mobile web app showing cost of the virtual currency purchase screen, where Google will gladly take your money via Google Wallet:

softgamespurchasecurrency

What are Content Ratings for the Play Store?

A version for developers is available here, and here’s the section specific for gambling:

Gambling
Apps that facilitate real gambling are not permitted in Google Play. Apps with gambling themes or simulated gambling must be rated medium maturity or high maturity.

The Play Store content ratings guide is quoted below:

Everyone

Applications in this category should not collect user’s location data or contain objectionable material. Applications should not share user content or include social features.
Low maturity

Applications in this category may include instances of mild cartoon or fantasy violence or other potentially offensive content. Applications may collect user location data for the purpose of providing location specific information or otherwise improving the user experience, but should not share the data with other users. Applications may include some social features but should not focus on allowing users to find and communicate with each other.
Medium maturity

Applications in this category may include sexual references; intense fantasy or realistic violence; profanity or crude humor; references to drug, alcohol and tobacco use; social features and simulated gambling. Applications may collect user location data for the purpose of sharing or publishing with the user’s consent.
High maturity

Applications in this category may focus on or include frequent instances of sexual and suggestive content; graphic violence; social features; simulated gambling; and strong alcohol, tobacco and drug references. Applications may collect user location data for the purpose of sharing or publishing with the user’s consent.

Google’s Blind Eye to Real Gambling in the Play Store

Google’s position so far is to allow apps like this, as I am not aware of any app takedowns because of faciliting real gambling in apps, despite explicitly allowing gambling in the submission policies. Apple is different in that it allows for real gambling apps only certain geographic areas, and all apps are subject to approval before launch.

At the very least, Google is protecting themselves by making sure that developers are agreeing to the guidelines set out by Google, so it is ultimately not Google’s responsibility to the problem of gambling in the play store.

When apps are submitted, developers will see the following in order to consent to Play Store guidelines:

Capture

Even ‘Top Developers’ Offend – Case in Point: Yahoo

Moving on from gambling, let’s talk about private user data.

Yahoo has many apps under its portfolio. But I’ve discovered that they have been sloppy at keeping content ratings relevant for some of their apps, particularly for their Fantasy sports apps. They currently have 14 apps published.

The Yahoo Fantasy Basketball and Yahoo Fantasy Hockey apps are rated ‘Everyone’. But they both contain social messaging features that should automatically put it in the ‘Medium maturity’ category.

Here’s a look at the Play Store page:

Capture

The screenshots even show social messaging features:

unnamed

If you go to Yahoo Sports and view their terms and conditions, they clearly state that they will collect user personal information:

COLLECTION OF PERSONAL INFORMATION
By signing up for Fantasy Basketball, you agree to Yahoo!’s use of your personal information as described in Yahoo!’s Privacy Policy, located at http://privacy.yahoo.com/privacy/us/sports/.

Apps Rated as ‘Everyone’ Collect User Personal Data, Including your Location – Case in Point: Electronic Arts Inc.

Here’s an example offender of putting apps in the ‘Everyone’ category – by Electronic Arts. Currently the 3rd top paid app in the Play Store. Need for Speed™ Most Wanted is rated as an ‘Everyone’ app, but has a terms and conditions of the app clearly states the application developer will collect your personal information, which is supposed to be non-personally identifiable, including your location:

2. Consent to Use of Data. To facilitate product support, product development and improvement as well as other services to you, you agree that EA or other third parties may use cookies, web beacons and other analytic technologies to collect, use, store and transmit non-personally identifiable technical and related information regarding your mobile device (including unique device id or UDID), IP address, geo-location, device make and model, operating system, software and applications, including application usage data. In addition, EA and/or third parties may collect, store, use and transmit non-personally identifiable game play data, session data, browser identifiers, carrier information well as online and Application usage metrics, statistics and/or analytics. Data collected by third parties will be collected, used, stored, transferred and disclosed pursuant to the third party’s privacy policy. See Appendix A for a non-exclusive list of third parties that may collect data via this Application. Appendix A includes both analytics companies and ad networks discussed in more detail in Section 3, below and includes URL’s for those third parties’ privacy policies and opt outs (if applicable). For data collected by or transferred to EA, EA may collect, use, store, share and transmit this information to third parties in a form that does not personally identify you in accordance with EA’s Privacy Policy located at http://privacy.ea.com.

Here’s a screenshot of the app in the Play Store.

nfs

Electronic Arts is one of the largest publisher of games in the Play Store, yet a quick look at other games in the portfolio shows the same problem, most if not all of their games fall under the same terms and conditions, but yet are all have a content rating of ‘Everyone’.

ea

Google Doesn’t Seem to Care Much

There doesn’t seem to be an easy way to the content rating of apps on an Android device. Here’s what it takes to view the content rating of an app on an Android device. Google has hidden this information underneath the ‘Description’ tab.

playstore

The main way to report apps is through the Play Store, but this only works through the Android app, at the bottom of the app page as follows. You inexplicably cannot do this in a web browser:

device-2013-05-30-164002

Google’s primary source of revenue is advertisement and selling your data, but I really believe that we should expect better of Google for this specific issue.

As a side-note, the Play Store’s Google+ integration is a content rating breach, because messages are posted publicly to the application’s profile. With app developers responding back to users, it is effectively a social messaging system. You can’t flag the Play Store as inappropriate though.

Ending Remarks

There are countless examples of apps that will collect your personal data, but how many of them are rated appropriately so you can keep yourself from using these apps?

For now, setting the content filter in the Play Store app is almost useless. Apps rated for ‘Everyone’ can and will collect your personal data, or even facilitate gambling.

If your children own an Android smartphone, there isn’t really simple solution for stopping them from using the Play Store and being exposed to inappropriate content in apps and personal data collection.

Currently, there doesn’t seem to be an easy way to check for offending apps from Google. I recommend this free third-party app I came across recently – BitDefender Clueful. Here’s a link to their app on the Play Store. The app analyzes the list of installed applications on your device and shows you how your private data is being utilized.

The strange thing is that they haven’t published a privacy policy for their application yet, but BitDefender historically does not sell collected information to third-party. By using Clueful, you do end up transmitting some data back to BitDefender. This is from their webpage privacy policy:

Information about our customers is an important part of our business, and we do not sell it to others. We share customer information only with the subsidiaries of BITDEFENDER, business partners or affliliated companies.

Capture