tag:blogger.com,1999:blog-889022097276347962024-03-18T21:22:04.890-07:00Android Development - News, Example, tutorial, Source Code Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.comBlogger166125tag:blogger.com,1999:blog-88902209727634796.post-4832152125609537962020-01-02T03:05:00.000-08:002020-01-02T03:05:49.061-08:00MongoDB search operation - Searching in document and document with nested json objects<div dir="ltr" style="text-align: left;" trbidi="on">
As you know MongoDB in no SQL database. MongoDB noSQL makes it faster than relational database. MongoDB based on documents. Document can be any valid json object. This json object can have nested structure. This article illustrates searching mechanism with MongoDB.<br />
<br />
<h4 style="text-align: left;">
Lets have some proper json document </h4>
<br />
<blockquote class="tr_bq">
{<br />
"name": "testUser",<br />
"deviceId": "android",<br />
"type": "contract",<br />
"address": "D14/150 London"<br />
}<br />
{<br />
"name": "testUser2",<br />
"deviceId": "android",<br />
"type": "contract",<br />
"address": "D14/150 London"<br />
}<br />
{<br />
"name": "testUser3",<br />
"deviceId": "android",<br />
"type": "contract",<br />
"address": "D14/150 London"<br />
}</blockquote>
<br />
<h4 style="text-align: left;">
Insert documents like below using MongoDB shell</h4>
<br />
<blockquote class="tr_bq">
> db.analytics.insertOne({ "name": "testUser", "deviceId": "android", "type": "contract", "address": "D14/150 London" });<br />
{<br />
"acknowledged" : true,<br />
"insertedId" : ObjectId("5e0dc9a3e6ebcea82c40836c")<br />
}</blockquote>
<br />
<br />
<h4 style="text-align: left;">
Let's find documents where name is equal to testUser</h4>
<br />
<blockquote class="tr_bq">
> db.analytics.find({name:"testUser"}).pretty();<br />
{<br />
"_id" : ObjectId("5e0dc9a3e6ebcea82c40836c"),<br />
"name" : "testUser",<br />
"deviceId" : "android",<br />
"type" : "contract",<br />
"address" : "D14/150 London"<br />
}</blockquote>
<br />
<h4 style="text-align: left;">
Lets find documents where name is testUser and type is contract</h4>
<br />
<blockquote class="tr_bq">
> db.analytics.find({name:"testUser", type: "contract"}).pretty();<br />
{<br />
"_id" : ObjectId("5e0dc9a3e6ebcea82c40836c"),<br />
"name" : "testUser",<br />
"deviceId" : "android",<br />
"type" : "contract",<br />
"address" : "D14/150 London"<br />
}</blockquote>
<br />
<h4 style="text-align: left;">
Search in MongoDB in nested documents. Let's create some nested documents </h4>
<br />
<br />
<blockquote class="tr_bq">
{<br />
"name": "newUser",<br />
"deviceId": "android",<br />
"type": "full",<br />
"address": "D14/150 London",<br />
"phone": {<br />
"home": 123404,<br />
"office": 485<br />
}<br />
}<br />
{<br />
"name": "newUser1",<br />
"deviceId": "android",<br />
"type": "full",<br />
"address": "D14/150 London",<br />
"phone": {<br />
"home": 000,<br />
"office": 485<br />
}<br />
}</blockquote>
<br />
<h4 style="text-align: left;">
Here the result of query </h4>
<br />
<blockquote class="tr_bq">
> db.analytics.find({"phone.home": 000}).pretty();<br />
{<br />
"_id" : ObjectId("5e0dccaae6ebcea82c408371"),<br />
"name" : "newUser1",<br />
"deviceId" : "android",<br />
"type" : "full",<br />
"address" : "D14/150 London",<br />
"phone" : {<br />
"home" : 0,<br />
"office" : 485<br />
}<br />
}</blockquote>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-8613075301587203762018-10-25T23:22:00.001-07:002018-10-25T23:22:46.119-07:00Why Node.js® - several reasons of nodejs popularity?<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg10geEKVu913RbQhr1hqgs7XbZpkNZy9H-guEhyphenhyphen9f2WEQGBnXVDm_NRyKG1FaeLDdYvv9n8Gnl6XfspB-UZd-ptIXS6Vi82HbrGezql2bHn2yG580KAQkRYWbC3siE1zU75qPkvqvZYzE/s1600/590px-Node.js_logo.svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="361" data-original-width="590" height="241" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg10geEKVu913RbQhr1hqgs7XbZpkNZy9H-guEhyphenhyphen9f2WEQGBnXVDm_NRyKG1FaeLDdYvv9n8Gnl6XfspB-UZd-ptIXS6Vi82HbrGezql2bHn2yG580KAQkRYWbC3siE1zU75qPkvqvZYzE/s400/590px-Node.js_logo.svg.png" width="400" /></a></div>
<br />
Node.js®, known as Node is gaining attention of designer. Node has been proved as good option to write highly scalable network solutions. We recently choose Nodejs as our server language.<br />
<br />
<h2 style="text-align: left;">
Asynchronous event driven JavaScript runtime </h2>
<div>
<br /></div>
Node is designed to build scalable network applications. Using nodejs many concurrent connection can be handle. On each connection the callback is fired, but if there is no work to be done, Node will sleep. This is opposite to common concurrency model where OS threads are employed. Thread-based networking is relatively inefficient and very difficult to use.<br />
<br />
<h2 style="text-align: left;">
Node are free from worries of dead-locking the process</h2>
<div>
<br /></div>
Users of Node are free from worries of dead-locking the process, since there are no locks. Almost no function in Node directly performs I/O, so the process never blocks.<br />
Because nothing blocks, scalable systems are very reasonable to develop in Node.<br />
<br />
<h2 style="text-align: left;">
Similarity with Ruby's Event machine and Python's twisted </h2>
<br />
Node is similar in design and influenced by system like Ruby's Event machine and Python's twisted. Node took the event model a bit further. It presented an event loop as a runtime construct instead of as a library. In other systems there is always a blocking call to start the event-loop. This behavior is defined through callbacks at the beginning of a script and at the end starts a server through a blocking call like EventMachine::run().<br />
<br />
In Node there is no such start-the-event-loop call. Node simply enters the event loop after executing the input script. Node exits the event loop when there are no more callbacks to perform. This behavior is like browser JavaScript — the event loop is hidden from the user<br />
<br />
<br />
<h2 style="text-align: left;">
HTTP's the most important aspect of Nodejs</h2>
<br />
HTTP is a first class citizen in Node, designed with streaming and low latency in mind. This makes Node well suited for the foundation of a web library or framework.<br />
<br />
<b>Note - J</b>ust because Node is designed without threads, that doesn't mean one can't take<br />
advantage of multiple core in environment. Child processes can be spawned by using our child_process.fork() API, and are designed to be easy to communicate with. Built upon that same interface is the cluster module, which allows you to share sockets between processes<br />
to enable load balancing over your cores. </div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-52884968267963704472018-09-03T02:03:00.002-07:002018-09-03T02:03:43.774-07:00Fixing Typescript warning - Parameter 'param' has 'any type' <div dir="ltr" style="text-align: left;" trbidi="on">
Use of <b>noImplicitAny </b>and <b>suppressImplicitAnyIndexErrors </b>inside tsconfig.json<br />
<br />
TypeScript developers disagree about whether the noImplicitAny flag should be true or false. There is no correct answer and you can change the flag later. But your choice now can make a difference in larger projects, so it merits discussion.<br />
<br />
When the <b>noImplicitAny </b>flag is false (the default), and if the compiler cannot infer the variable type based on how it's used, the compiler silently defaults the type to any. That's what is meant by implicit any.<br />
<br />
The documentation setup sets the noImplicitAny flag to true. When the noImplicitAny flag is true and the TypeScript compiler cannot infer the type, it still generates the JavaScript files, but it also reports an error. Many seasoned developers prefer this stricter setting because type checking catches more unintentional errors at compile time.<br />
<br />
You can set a variable's type to any even when the <b>noImplicitAny </b>flag is true.<br />
<br />
When the noImplicitAny flag is true, you may get implicit index errors as well. Most developers feel that this particular error is more annoying than helpful. You can suppress them with the following additional flag:<br />
<br />
"suppressImplicitAnyIndexErrors":true<br />
The documentation setup sets this flag to true as well.<br />
<div>
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-9840375706785407062018-02-19T23:31:00.002-08:002018-02-19T23:33:33.557-08:00Spark tutorial - Understanding and exploring spark core components RDDs<div dir="ltr" style="text-align: left;" trbidi="on">
Spark is fast, ease to use data processing engine. Spark is developed as replacement of Hadoop MapReduce and runs over Hadoop. It uses Hadoop Distributed File System of Hadoop. Spark is the open source apache product available since 2014. Spark popularity is growing at rapid speed. Spark doesn't need extra skill set. Knowledge of Core Java and Distributing computing is enough for it.<br />
<br />
There are terminology which founds difficults to understand by spark developers. I am going to explain those in my own language.<br />
<br />
<h3 style="text-align: left;">
<span style="color: #073763;">Spark RDDs </span></h3>
<div>
<br /></div>
Spark RDDs is the resilient distributed dataset. RDDs is immutable datasets which can be created from internal source (i.e. Parallelize way) or external source (i.e. Spark streaming, text file, input file format etc). RDD's elements can distributed across spark cluster for processing. RDDs can only be created by reading data from a stable storage such as TCP Streaming, Files or by transformations on existing RDDs.<br />
<br />
<br />
For example- If as a spark developer you write spark TCP streaming job with interval of 1 seconds. Spark continuously receive data and form a RDD form the data receives in that one seconds.<br />
Look at the image below. RDD consists of elemens E1, E2 .... En which can be json, text, line or any other string. This RDD can be transfom into new RDD but here i am not talking about this.<br />
Elements of RDDs can be processed using foreach element loop. And then these elements will be distributed across executors in spark clusters.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPrs5o6IWdgYcnK6hoa0_tW8fZSPh9ZkU49PZL5WqHbg9iDhPi2HgISlxjPbeWW4UmwlLkSbQflsG3U73twoJG7nGMgqPxv1kyUmYvySr0PZdFHMePCeNuPin0O-UreEVl604BMiPKbrM/s1600/Untitled+Diagram.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="241" data-original-width="501" height="307" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPrs5o6IWdgYcnK6hoa0_tW8fZSPh9ZkU49PZL5WqHbg9iDhPi2HgISlxjPbeWW4UmwlLkSbQflsG3U73twoJG7nGMgqPxv1kyUmYvySr0PZdFHMePCeNuPin0O-UreEVl604BMiPKbrM/s640/Untitled+Diagram.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><h4>
Spark RDDs</h4>
</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<h3 style="text-align: left;">
Point (1) - This explain how RDD is created from the data received on spark tcp socket in 1 seconds. </h3>
<span id="goog_2041997650"></span><span id="goog_2041997651"></span><br />
<h3 style="text-align: left;">
Point (2) - This explain that elements of RDD assigned to executors for processing. </h3>
<div>
<br /></div>
<div>
<div>
Below is the code of simple spark streaming. Where socket is opend to a IP and port and RDDs are formed every 3s.See clearly where point 1 and 2 lies in the codes.</div>
<div>
<br /></div>
<div>
<pre style="background: rgb(240, 240, 240); border: 1px dashed rgb(204, 204, 204); font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> SparkConf sparkConf = new SparkConf().setMaster("spark://10.1.0.5:8088").setAppName("App name");
JavaStreamingContext ssc = new JavaStreamingContext(sparkConf, new Duration(3000));
JavaDStream<String> stream = ssc.socketTextStream("socket IP", 9000, StorageLevels.MEMORY_AND_DISK_SER);
stream.foreachRDD(new VoidFunction<JavaRDD<String>>() {
private static final long serialVersionUID = 1L;
public void call(JavaRDD<String> rdd) throws Exception {
</code><h3 style="text-align: left;">
<code style="color: black; word-wrap: normal;"> </code><code style="word-wrap: normal;"><span style="color: red;">/** Point (1) **/ </span></code></h3>
<code style="color: black; word-wrap: normal;"> rdd.foreach(new VoidFunction<String>() {
private static final long serialVersionUID = 1L;
public void call(String s) throws Exception {
</code><h3 style="text-align: left;">
<code style="color: black; word-wrap: normal;"> </code><code style="word-wrap: normal;"><span style="color: red;"> /** Point (2) **/ </span></code></h3>
<code style="color: black; word-wrap: normal;"> System.out.println(s);
}
});
}
});
ssc.start();
ssc.awaitTermination();
</code></pre>
</div>
</div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-25235639002239380872018-02-08T02:24:00.000-08:002018-02-08T02:24:17.325-08:00Spark TCP streaming example without Kafka<div dir="ltr" style="text-align: left;" trbidi="on">
Spark Streaming is an extension of the core Spark API that enables scalable, high-throughput, fault-tolerant stream processing of live data streams. Data can be ingested from many sources like Kafka, Flume, Kinesis, or TCP sockets. And Finally, processed data can be pushed to filesystems, databases, and live dashboards. On data, you can apply Spark’s machine learning and graph processing algorithms on data streams.<br />
<br />
Spark streaming is useful to read data from producer and distribute data over multiple machine in clustor or yarn mode.<br />
<br />
Few term related to spark streaming -<br />
<br />
RDD stands for resilient data distribution. RDD is created from the data that bring when spark streaming executes in batch interval.<br />
<br />
<h3 style="text-align: left;">
Creating simple example of TCP socket streaming is given below -</h3>
<br />
<!-- HTML generated using hilite.me --><br />
<div style="background: #ffffff; border-width: 0.1em 0.1em 0.1em 0.1em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;">
<pre style="line-height: 125%; margin: 0;"> <span style="color: #555555; font-weight: bold;">@SuppressWarnings</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"resource"</span><span style="color: #333333;">)</span>
<span style="color: #008800; font-weight: bold;">public</span> <span style="color: #008800; font-weight: bold;">static</span> <span style="color: #333399; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">main</span><span style="color: #333333;">(</span>String<span style="color: #333333;">[]</span> args<span style="color: #333333;">)</span> <span style="color: #333333;">{</span>
SparkConf sparkConf <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">new</span> SparkConf<span style="color: #333333;">().</span><span style="color: #0000cc;">setMaster</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"spark-master-url"</span><span style="color: #333333;">).</span><span style="color: #0000cc;">setAppName</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"xyz"</span><span style="color: #333333;">)</span>
<span style="color: #333333;">.</span><span style="color: #0000cc;">set</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"spark.executor.memory"</span><span style="color: #333333;">,</span> <span style="background-color: #fff0f0;">"1g"</span><span style="color: #333333;">).</span><span style="color: #0000cc;">set</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"spark.cores.max"</span><span style="color: #333333;">,</span> <span style="background-color: #fff0f0;">"5"</span><span style="color: #333333;">).</span><span style="color: #0000cc;">set</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"spark.driver.cores"</span><span style="color: #333333;">,</span> <span style="background-color: #fff0f0;">"2"</span><span style="color: #333333;">)</span>
<span style="color: #333333;">.</span><span style="color: #0000cc;">set</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"spark.driver.memory"</span><span style="color: #333333;">,</span> <span style="background-color: #fff0f0;">"2g"</span><span style="color: #333333;">);</span>
JavaStreamingContext ssc <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">new</span> JavaStreamingContext<span style="color: #333333;">(</span>sparkConf<span style="color: #333333;">,</span> <span style="color: #008800; font-weight: bold;">new</span> Duration<span style="color: #333333;">(</span><span style="color: #0000dd; font-weight: bold;">3000</span><span style="color: #333333;">));</span>
JavaDStream<span style="color: #333333;"><</span>String<span style="color: #333333;">></span> JsonReq1 <span style="color: #333333;">=</span> ssc<span style="color: #333333;">.</span><span style="color: #0000cc;">socketTextStream</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"bindIP"</span><span style="color: #333333;">,</span> bindport<span style="color: #333333;">,</span> StorageLevels<span style="color: #333333;">.</span><span style="color: #0000cc;">MEMORY_AND_DISK_SER</span><span style="color: #333333;">);</span>
JavaDStream<span style="color: #333333;"><</span>String<span style="color: #333333;">></span> JsonReq2 <span style="color: #333333;">=</span> ssc<span style="color: #333333;">.</span><span style="color: #0000cc;">socketTextStream</span><span style="color: #333333;">(</span><span style="background-color: #fff0f0;">"bindIP"</span><span style="color: #333333;">,</span> bindport<span style="color: #333333;">,</span> StorageLevels<span style="color: #333333;">.</span><span style="color: #0000cc;">MEMORY_AND_DISK_SER</span><span style="color: #333333;">);</span>
ArrayList<span style="color: #333333;"><</span>JavaDStream<span style="color: #333333;"><</span>String<span style="color: #333333;">>></span> streamList <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">new</span> ArrayList<span style="color: #333333;"><</span>JavaDStream<span style="color: #333333;"><</span>String<span style="color: #333333;">>>();</span>
streamList<span style="color: #333333;">.</span><span style="color: #0000cc;">add</span><span style="color: #333333;">(</span>JsonReq1<span style="color: #333333;">);</span>
JavaDStream<span style="color: #333333;"><</span>String<span style="color: #333333;">></span> UnionStream <span style="color: #333333;">=</span> ssc<span style="color: #333333;">.</span><span style="color: #0000cc;">union</span><span style="color: #333333;">(</span>JsonReq2<span style="color: #333333;">,</span> streamList<span style="color: #333333;">);</span>
UnionStream<span style="color: #333333;">.</span><span style="color: #0000cc;">foreachRDD</span><span style="color: #333333;">(</span><span style="color: #008800; font-weight: bold;">new</span> VoidFunction<span style="color: #333333;"><</span>JavaRDD<span style="color: #333333;"><</span>String<span style="color: #333333;">>>()</span> <span style="color: #333333;">{</span>
<span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">static</span> <span style="color: #008800; font-weight: bold;">final</span> <span style="color: #333399; font-weight: bold;">long</span> serialVersionUID <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1L</span><span style="color: #333333;">;</span>
<span style="color: #008800; font-weight: bold;">public</span> <span style="color: #333399; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">call</span><span style="color: #333333;">(</span>JavaRDD<span style="color: #333333;"><</span>String<span style="color: #333333;">></span> rdd<span style="color: #333333;">)</span> <span style="color: #008800; font-weight: bold;">throws</span> Exception <span style="color: #333333;">{</span>
rdd<span style="color: #333333;">.</span><span style="color: #0000cc;">foreach</span><span style="color: #333333;">(</span><span style="color: #008800; font-weight: bold;">new</span> VoidFunction<span style="color: #333333;"><</span>String<span style="color: #333333;">>()</span> <span style="color: #333333;">{</span>
<span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">static</span> <span style="color: #008800; font-weight: bold;">final</span> <span style="color: #333399; font-weight: bold;">long</span> serialVersionUID <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1L</span><span style="color: #333333;">;</span>
<span style="color: #008800; font-weight: bold;">public</span> <span style="color: #333399; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">call</span><span style="color: #333333;">(</span>String s<span style="color: #333333;">)</span> <span style="color: #008800; font-weight: bold;">throws</span> Exception <span style="color: #333333;">{</span>
System<span style="color: #333333;">.</span><span style="color: #0000cc;">out</span><span style="color: #333333;">.</span><span style="color: #0000cc;">println</span><span style="color: #333333;">(</span>s<span style="color: #333333;">);</span>
<span style="color: #333333;">}</span>
<span style="color: #333333;">});</span>
<span style="color: #333333;">}</span>
<span style="color: #333333;">});</span>
System<span style="color: #333333;">.</span><span style="color: #0000cc;">out</span><span style="color: #333333;">.</span><span style="color: #0000cc;">println</span><span style="color: #333333;">(</span>UnionStream<span style="color: #333333;">.</span><span style="color: #0000cc;">count</span><span style="color: #333333;">());</span>
ssc<span style="color: #333333;">.</span><span style="color: #0000cc;">start</span><span style="color: #333333;">();</span>
ssc<span style="color: #333333;">.</span><span style="color: #0000cc;">awaitTermination</span><span style="color: #333333;">();</span>
<span style="color: #333333;">}</span>
</pre>
</div>
<br />
<br />
Term like <span style="font-size: large;">bindIP </span>and <span style="font-size: large;">bindport </span>will be your specific spark ip/port. To test this application you can create a basic service socket port programm which must listen for clients socket from spark executor.<br />
<span style="font-size: large;">spark-master-url</span> should be the url of machine where spark master is running . spark master url generally looks like <span style="font-size: large;">spark://machineip:port</span><br />
<br /></div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-73388636192199091332017-08-22T00:20:00.001-07:002017-08-22T00:20:25.852-07:00Android Oreo 8.0 officially : Android oreo launched, roll out will start soon<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size: 13.5pt;">After more than a year of development and months of testing by
developers and early adopters (thank you!), google android oreo now ready to
officially launched. Android 8.0 Oreo will be available to the world soon.
Android 8.0 brings a ton of great features such as picture-in-picture,
autofill, integrated Instant Apps, Google Play Protect, faster boot time, and
much more.</span><o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;"><span style="font-family: Arial, Helvetica, sans-serif;">The features of Android O were first showed off at the Google I/O
developer conference held in May 2017. </span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMztVpJsZ8QjpEG7eKPG7oLPiTpYcuo5UW_9-cHypEvPY0VE5lgp-clBrC7b6ExcZw-dzjC5nlF6UMbH4Xby6pWbpvCy-KEL-HoPcVm-n2uakJxirdkxaPnpqKNF_K4eaK3-DLNOjBHtQ/s1600/image4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="1056" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMztVpJsZ8QjpEG7eKPG7oLPiTpYcuo5UW_9-cHypEvPY0VE5lgp-clBrC7b6ExcZw-dzjC5nlF6UMbH4Xby6pWbpvCy-KEL-HoPcVm-n2uakJxirdkxaPnpqKNF_K4eaK3-DLNOjBHtQ/s320/image4.png" width="211" /></a></span></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><o:p></o:p></span><br />
<div style="margin: 0in 0in 0.0001pt;">
<span style="font-size: 13.5pt;"><span style="font-family: Arial, Helvetica, sans-serif;">Google hasn’t made any major
changes in the design and layout. The focus in Oreo, like in Nougat, is more on
fine-tuning the OS and adding features that would improve the overall
experience of using an Android smartphone or tablet.<o:p></o:p></span></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;"><span style="font-family: Arial, Helvetica, sans-serif;">I will be posting a detail article of new feature for developer
very soon. Finger crossed !!!<o:p></o:p></span></span></div>
<br />
<div class="MsoNormal">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-55456750274506753322017-08-16T23:05:00.001-07:002017-08-16T23:05:35.976-07:00Revival of Nokia : Nokia 6 launch is perfect fly way, Nokia should thanks Android <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLzTW7SFjVkEI8h30-XXBIa_qDXp-uNenkEsXyk0FDTHrBm302Rt3M2l3aIKuZjtBnCCQqw2ZHDKBGFRTbxHHSlySw6QyHD-oEJv79zXGym4RbrFjQWvl49JTE1GC3ciRrVytKzhYGzUI/s1600/Nokia_6_back_and_side_-_Black_Matte.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="700" data-original-width="1131" height="395" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLzTW7SFjVkEI8h30-XXBIa_qDXp-uNenkEsXyk0FDTHrBm302Rt3M2l3aIKuZjtBnCCQqw2ZHDKBGFRTbxHHSlySw6QyHD-oEJv79zXGym4RbrFjQWvl49JTE1GC3ciRrVytKzhYGzUI/s640/Nokia_6_back_and_side_-_Black_Matte.png" width="640" /></a></div>
<div class="MsoNormal">
<span style="font-size: 13.5pt; line-height: 107%;"><br /></span></div>
<div class="MsoNormal">
<span style="background: white; color: #222222; font-family: "Arial",sans-serif; font-size: 10.0pt; line-height: 107%;">Nokia a Finnish company was
of demolish when Microsoft purchased it. Nokia was terribly failed in the race
of speedy innovation and competition. There used to be a only Nokia group which
were in great number, slowly turn towards Samsung. <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; color: #222222; font-family: "Arial",sans-serif; font-size: 10.0pt; line-height: 107%;">In 1998 alone, the company
had sales revenue of $20 billion making $2.6 billion profit. By 2000 Nokia
employed over 55,000 people.[34]The <a href="https://en.wikipedia.org/wiki/Nokia_3650" title="Nokia 3650"><span style="color: #222222; text-decoration-line: none;">Nokia 3600/3650</span></a> was
the first camera phone to hit the North American market in 2003. The company
would go on to become a successful and innovative camera phone maker.<o:p></o:p></span></div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
<span style="background: white; color: #222222; font-family: "Arial",sans-serif; font-size: 10.0pt; line-height: 107%;">But after 2010, in front of
competition from Google and Apple, Nokia become outdated and a lethargic market
player. <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="background: white; color: #222222; font-family: Arial, sans-serif; line-height: 107%;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjixz17YQC3FXWN2WGORhI7VXEMz4Jg_wflKRPxSeGNE8y9SMiWS7CManwAZuye03_UHpqmT_Ehg-kMdltqH_Hhux34C8ZWgaHslv0AGKPa76NzMVyon_Cp54WsvK5wHfsRsvO5kpJn7Fs/s1600/Nokia_6-color_variant-Tempered_Blue.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="700" data-original-width="368" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjixz17YQC3FXWN2WGORhI7VXEMz4Jg_wflKRPxSeGNE8y9SMiWS7CManwAZuye03_UHpqmT_Ehg-kMdltqH_Hhux34C8ZWgaHslv0AGKPa76NzMVyon_Cp54WsvK5wHfsRsvO5kpJn7Fs/s320/Nokia_6-color_variant-Tempered_Blue.jpg" width="168" /></a></div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWg9xWuJzpYiO6FHzbdOSLjLq7pfLAoSV0eKT5PETQoTqU8c9HzXKhA0L6MPavKnga4z3ahMBQfSccGHprH5wYsapuDUYFF9iY9snkSnHQi-PR1lX7XOc9IJyAfW91pOyV2BH8zM1Wi5s/s1600/Nokia-6_Beautyshot.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" border="0" data-original-height="700" data-original-width="600" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWg9xWuJzpYiO6FHzbdOSLjLq7pfLAoSV0eKT5PETQoTqU8c9HzXKhA0L6MPavKnga4z3ahMBQfSccGHprH5wYsapuDUYFF9iY9snkSnHQi-PR1lX7XOc9IJyAfW91pOyV2BH8zM1Wi5s/s320/Nokia-6_Beautyshot.png" title="Nokia 6" width="274" /></a><br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="MsoNormal">
<span style="background-color: white; color: #222222; font-family: Arial, sans-serif; font-size: 10pt;">Nokia stays away from
Android since android was launched. First, they try to sale their phone loaded
with Symbian O.S, then Microsoft bought Nokia and run their luck with windows
O.S. to shun android and iOS. None of the strategy worked for Nokia. Now Nokia
have adopted world most popular mobile O.S android to turn their future. Nokia
6, the first Nokia phone with android is already a big hit in India. Nokia 6 is
selling by Amazon on bases of pre-booking </span></div>
<div class="MsoNormal">
<span style="background-color: white; color: #222222; font-family: Arial, sans-serif; font-size: 10pt;"><br /></span></div>
<h2 data-reactid="188" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 46px; font-weight: 200; line-height: 56px; margin: 0px 0px 20px; text-align: center;">
Full specifications</h2>
<div class="specs__container" data-reactid="189" style="box-sizing: border-box; color: #273142; display: flex; flex-flow: row wrap; font-family: nokia-pure-text-light, Arial, Helvetica, sans-serif; font-size: 18px; justify-content: space-between; margin: 0px auto; max-width: 1100px; padding-top: 40px;">
<div class="specs__specs-block" data-reactid="190" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="191" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
In the box</h5>
<div class="content" data-reactid="192" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="193" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
Your Nokia 6</div>
<div data-reactid="194" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
Charger</div>
<div data-reactid="195" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
Charging/data cable</div>
<div data-reactid="196" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
Headset</div>
<div data-reactid="197" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
Quick guide</div>
<div data-reactid="198" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
SIM door key</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="200" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="201" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Design</h5>
<div class="content" data-reactid="202" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="203" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="204" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Colors</span> Arte Black (limited edition), Matte Black, Tempered Blue, Silver, Copper</div>
<div data-reactid="206" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="207" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Size</span> 154 x 75.8 x 7.85 mm (8.4 with camera bump)</div>
<div data-reactid="209" style="box-sizing: border-box;">
</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="211" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="212" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Network and connectivity</h5>
<div class="content" data-reactid="213" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="214" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="215" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Network speed</span> LTE Cat. 4, 150Mbps DL/50Mbps UL</div>
<div data-reactid="217" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="218" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Networks</span> GSM: 850/900/1800/1900; WCDMA: Band 1, 2, 5, 8; LTE: Band 1, 3, 5, 7, 8, 20, 28, 38, 40</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="221" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="222" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Performance</h5>
<div class="content" data-reactid="223" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="224" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="225" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Operating system</span> Android™ 7.1.1 Nougat</div>
<div data-reactid="227" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="228" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">RAM</span> Arte Black, 4 GB; all other colors, 3 GB</div>
<div data-reactid="230" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="231" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">CPU</span> Qualcomm® Snapdragon™ 430 mobile platform</div>
<div data-reactid="233" style="box-sizing: border-box;">
</div>
<div data-reactid="234" style="box-sizing: border-box;">
</div>
<a data-reactid="235" href="https://www.qualcomm.com/products/snapdragon" style="box-sizing: border-box; color: #4d5766; text-decoration-line: none;" target="_blank"><img alt="qualcomm_snapdragon_logo@2x.png" class="spec__logo" data-reactid="236" src="https://images.contentful.com/wcfotm6rrl7u/3hnWK0JEhWsCMie2yC6IwM/b5bbbb1a7dfcbc1cf35b61f28259b823/qualcomm_snapdragon_logo_2x.png?fm=png" style="border-style: none; box-sizing: border-box; height: auto; max-width: 100%; padding: 5px 0px; width: 181.5px;" /></a></div>
</div>
<div class="specs__specs-block" data-reactid="237" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="238" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Storage</h5>
<div class="content" data-reactid="239" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="240" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="241" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Internal memory</span> Arte Black, 64 GB<span data-reactid="243" style="box-sizing: border-box; font-size: 12px; line-height: 0; position: relative; top: -0.5em; vertical-align: baseline;">2</span>; all other colors, 32 GB<span data-reactid="245" style="box-sizing: border-box; font-size: 12px; line-height: 0; position: relative; top: -0.5em; vertical-align: baseline;">2</span></div>
<div data-reactid="246" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="247" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">MicroSD card slot</span> Support for up to 128 GB</div>
<div data-reactid="249" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="250" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Services</span> Google Drive</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="253" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="254" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Audio</h5>
<div class="content" data-reactid="255" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="256" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="257" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Connector</span> 3.5 mm headphone jack</div>
<div data-reactid="259" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="260" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Speakers</span> Dual speakers</div>
<div data-reactid="262" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="263" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Amplifier</span> Smart amplifier (TFA9891) with Dolby Atmos®</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="266" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="267" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Display</h5>
<div class="content" data-reactid="268" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="269" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="270" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Size and type</span> 5.5” IPS LCD</div>
<div data-reactid="272" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="273" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Resolution</span> Full-HD (1920 x 1080, 16:9)</div>
<div data-reactid="275" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="276" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Material</span> Sculpted Corning® Gorilla® Glass</div>
<div data-reactid="278" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="279" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Pixel density</span> 403 ppi</div>
<div data-reactid="281" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="282" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Brightness</span> 450 nits, laminated</div>
<div data-reactid="284" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="285" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Features</span> Sunlight readability</div>
<div data-reactid="287" style="box-sizing: border-box;">
</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="289" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="290" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Camera</h5>
<div class="content" data-reactid="291" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="292" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="293" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Primary camera</span> 16MP PDAF, 1.0um, f/2, dual tone flash</div>
<div data-reactid="295" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="296" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Front-facing camera</span> 8MP AF, 1.12um, f/2, FOV 84 degrees</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="299" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="300" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Connectivity and sensors</h5>
<div class="content" data-reactid="301" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="302" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="303" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Connectivity</span> Micro USB (USB 2.0), USB OTG, Wi-Fi, Bluetooth 4.1</div>
<div data-reactid="305" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="306" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Sensors</span> Accelerometer (G-sensor), ambient light sensor, e-compass, Hall sensor, fingerprint sensor, gyroscope, proximity sensor, NFC (sharing)</div>
</div>
</div>
<div class="specs__specs-block" data-reactid="309" style="box-sizing: border-box; margin-bottom: 20px; width: 330px;">
<h5 data-reactid="310" style="box-sizing: border-box; color: #4d5766; font-family: NokiaPureHeadline; font-size: 20px; font-weight: 200; line-height: 26px; margin: 0px;">
Battery life</h5>
<div class="content" data-reactid="311" style="box-sizing: border-box; margin-top: 8px;">
<div data-reactid="312" style="box-sizing: border-box; color: #4d5766; font-family: nokia-pure-text-light; font-size: 16px; line-height: 26px;">
<span data-reactid="313" style="box-sizing: border-box; font-family: nokia-pure-text-bold; font-weight: bolder;">Battery type</span> Integrated 3000 mAh battery<span data-reactid="315" style="box-sizing: border-box; font-size: 12px; line-height: 0; position: relative; top: -0.5em; vertical-align: baseline;">4</span></div>
</div>
</div>
</div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-87105031751401399382017-06-19T01:24:00.002-07:002017-06-19T01:24:19.656-07:00Android Kotlin – 7 reason why using Kotlin is better idea over Java<div dir="ltr" style="text-align: left;" trbidi="on">
While Java is most popular language for android development.
But android application can be written in any language that can compile and run
on Java Virtual Machine (JVM). End user
even can’t see the difference.<br />
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
Kotlin is officially introduced in recent Google IO session.
Switching to Kotlin programming language is a nice idea as Kotlin is much
stronger language compare to Java in many areas.<o:p></o:p></div>
<div class="MsoNormal">
There are 10 reason to use kotlin in android development
over java –<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDdHIhZ3T68TC697xvETnP9LLkgQgSOyB3rEL3r8Kv4ua8E5xNzF5Qf_7vavMlRPhhD7i4gCS4JcoBHw49gje3elm5WQ9OqxqGrACjYbFPCsxxAvAaOczFXoEJCRCdfm2EaXjE7qR-RW8/s1600/Java_logo_icon.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="897" data-original-width="1600" height="111" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDdHIhZ3T68TC697xvETnP9LLkgQgSOyB3rEL3r8Kv4ua8E5xNzF5Qf_7vavMlRPhhD7i4gCS4JcoBHw49gje3elm5WQ9OqxqGrACjYbFPCsxxAvAaOczFXoEJCRCdfm2EaXjE7qR-RW8/s200/Java_logo_icon.png" width="200" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD0uZ9fJac3s1a-1OSnHPiRnqN92pupxFHZd2fEsLNUFIYFBkJpNQMPP55PgYASuNxBQFIAHhWxCdL02zQlRQQYkyHFsS5L5duwcANYUEG6qbUgykXbOHBZdTDKCducHom0JaBJrAD0ek/s1600/Kotlin_logo_wordmark.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="356" data-original-width="1600" height="44" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD0uZ9fJac3s1a-1OSnHPiRnqN92pupxFHZd2fEsLNUFIYFBkJpNQMPP55PgYASuNxBQFIAHhWxCdL02zQlRQQYkyHFsS5L5duwcANYUEG6qbUgykXbOHBZdTDKCducHom0JaBJrAD0ek/s200/Kotlin_logo_wordmark.png" width="200" /></a></div>
<div class="MsoNormal">
<br /></div>
<h2 style="text-align: left; text-indent: -0.25in;">
Java isn’t a modern language </h2>
<div>
<br /></div>
<div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
Even though launching Java 8 was the great
effort to make it a modern language but at the time of writing android only
support a subset of Java 9 features. Java as a whole also has some pretty
well-documented language issues, including endless try-catch blocks,
a lack of extend ability, null-unsafety (and that <i>infamous</i> NullPointerException),
not to mention a lack of support for functional programming features.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<h2 style="text-align: left; text-indent: -0.25in;">
<span style="font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span><span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span>Interchangeability with Java</h2>
<div>
<br /></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
Kotlin strength is, it can work all alone
and along with java as well. Open source content which are already written in
Java can work with Kotlin with any problem<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<h2 style="text-align: left; text-indent: -0.25in;">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span>Kotlin is easy to learn </h2>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<div class="MsoListParagraphCxSpMiddle">
Being a modern object oriented programming language,
Kotlin is very easy to learn. Java developer will find most syntax of Kotlin
similar to Java.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<h2 style="text-align: left; text-indent: -0.25in;">
Combination of Best functional and Procedural </h2>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<div class="MsoListParagraphCxSpMiddle">
So why should you have to choose between
functional and procedural? Like many modern programming languages, Kotlin aims
to bring you the best of both worlds by combining concepts and elements from
both procedural and functional programming.<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span></div>
<h2 style="text-align: left; text-indent: -0.25in;">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span>Nice Android Studio Support </h2>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<br /></div>
<div class="MsoListParagraphCxSpMiddle">
Kotlin is developed by JetBrains, the
company behind IntelliJ—the IDE that Android Studio is based on. It’s obvious
that Android Studio has excellent support for Kotlin. If you've installed the
Kotlin plugin, Android Studio makes configuring Kotlin in your project simple.</div>
<div class="MsoListParagraphCxSpMiddle">
<span style="text-indent: -0.25in;"><br /></span></div>
<h2 style="text-align: left;">
<span style="text-indent: -0.25in;">Concise code</span></h2>
<div class="MsoListParagraphCxSpMiddle">
<span style="text-indent: -0.25in;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle">
Class written in Kotlin is more concise
compare to code written in Java for same work.<span style="background: #FEFEFE; color: #3a3a3a; font-family: "Arial","sans-serif"; font-size: 13.5pt; line-height: 107%;"> </span>Kotlin is particularly good at reducing the amount of
boilerplate code you need to write, which should make coding in Kotlin a much
more enjoyable experience</div>
<div class="MsoListParagraphCxSpMiddle">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal; text-indent: -0.25in;"><br /></span></div>
<h2 style="text-align: left;">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal; text-indent: -0.25in;"> </span><span style="text-indent: -0.25in;">Extra runtime size</span></h2>
<div class="MsoListParagraphCxSpMiddle">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal; text-indent: -0.25in;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle">
<span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal; text-indent: -0.25in;"> </span><span style="text-indent: -0.25in;">The Kotlin Standard Library and runtime will
increase the size of your </span><b style="text-indent: -0.25in;">.apk</b><span style="text-indent: -0.25in;">. While this only equates to
around 800KB. But it will put extra 800KB on your apk current size.</span></div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<div class="MsoListParagraphCxSpMiddle">
Even though Kotlin seems much
better than Java but lack of official support from Google can pile up your
pain. On internet there is less help available on Kotlin. I would recommend to
use Kotlin along with Java. There is no need of immediate transformation of
your application to Kotlin as Google didn’t make it compulsory.</div>
<div class="MsoListParagraphCxSpMiddle">
<br /></div>
<div class="MsoListParagraphCxSpMiddle">
Keep learning and Keep commenting ……..
Wish you Good luck</div>
<div class="MsoNormal" style="margin-left: .25in;">
<o:p></o:p></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-26865873361793454922017-05-19T00:09:00.000-07:002017-05-19T00:09:03.493-07:00Another milestone for android – Reach 2 Billion monthly active android devices<div dir="ltr" style="text-align: left;" trbidi="on"><div class="MsoNormal"><br />
</div><br />
<div class="MsoNormal">When Google started android in early 2007, it was before Android, before iOS. Mobile was still niche. And while many of us had a sense that mobile was going to be big, we were not sure we really realized just how big it was going to get. Fast forward to today, and there be now 2 billion monthly active Android devices globally. </div><div class="MsoNormal"><br />
</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/S_M4B-pl05M/0.jpg" frameborder="0" height="420" src="https://www.youtube.com/embed/S_M4B-pl05M?feature=player_embedded" width="600"></iframe></div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><br />
</div><div class="MsoNormal">This is an extraordinarily humbling milestone—and it’s the largest reach of any computing platform of its kind. Today at Google I/O, Google celebrated that milestone and showcased a number of ways Google working to make Android even more useful, including a beta release of Android O and a new initiative to help bring Android to the next billion users.<o:p></o:p></div></div>Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-10187986180498406282017-04-19T22:47:00.004-07:002017-04-19T22:47:39.644-07:00Samsung Galaxy S8 the best innovative phone in near future<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
Samsung is the standout performer for android O.S over the
years. It’s not wrong to say that Samsung is carrying responsibility of making
high end phone for android. Samsung is the only android OEM which compete with
Apple on every front.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
This time Samsung has again proven itself that why android is
nothing without Samsung. Here are some exceptional feature which make Samsung S8,
S8+ as best phone in near future<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpaC_Xph-njRZbtBcExiQ4qFIluZ1PMa02Jjmhtc98vp1-9j7Di_bsUwuHgMI4Ae8ELSo6GLUaV1FATorIXdI2BgZSaOGLtq2r0Sm_JQBHr3l9Hea4ttqSIShzFohRG4i0IncXhIO1m3c/s1600/Samsung-s8-plus.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="164" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpaC_Xph-njRZbtBcExiQ4qFIluZ1PMa02Jjmhtc98vp1-9j7Di_bsUwuHgMI4Ae8ELSo6GLUaV1FATorIXdI2BgZSaOGLtq2r0Sm_JQBHr3l9Hea4ttqSIShzFohRG4i0IncXhIO1m3c/s320/Samsung-s8-plus.jpg" width="320" /></a></div>
<br />
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
Stunning Infinity Display 10/10</h3>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
The Infinity Display sets a new standard for uninterrupted,
immersive experiences. It enables an expanded screen size without necessitating
a larger phone. So while the view is grander, Galaxy S8 and S8+ feel small in
your hand, making them easy to hold and use.<o:p></o:p></div>
<div class="MsoNormal">
Immerse yourself in a larger than ever screen that still
fits comfortably in your hand. Galaxy S8 and S8+ break free from the confines
of bezels, offering a smooth, uninterrupted surface that flows seamlessly over
the edges. We achieved this by completely redesigning the phone from the inside
out. And we have reinvented the home button, by placing it on the screen, where
it stays hidden until you need it. So you get a bigger, unobstructed view
without making the phone larger<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
Camera 8/10</h3>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Camera comes with lots of great feature like focus on what
matters, filtered moment, selfie moment. Night vision of camera is very nice. It
have two mode pro and auto mode. In pro mode shutter speed, Exposure and White
Balance can be customised to enhance photography experience.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGu5ETF75VkfCSjcvovLnVX8s1_kf2mcD8aIbpPSCDNsD1TjLlUTbBP3a65npBi_IzR_b7wcSI_PquXektXu_ZvZIjS1J7VVYoO7hMk-GDjMTR4lpgwZ564uHODj58Yb_IK0D4xWbyGGY/s1600/1f217c342371b11e7ddacfb2bc7a3d50f91613ee.jpeg" imageanchor="1" style="clear: left; float: left; font-size: 18.72px; margin-bottom: 1em; margin-right: 1em; text-align: center;"><img border="0" height="114" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGu5ETF75VkfCSjcvovLnVX8s1_kf2mcD8aIbpPSCDNsD1TjLlUTbBP3a65npBi_IzR_b7wcSI_PquXektXu_ZvZIjS1J7VVYoO7hMk-GDjMTR4lpgwZ564uHODj58Yb_IK0D4xWbyGGY/s200/1f217c342371b11e7ddacfb2bc7a3d50f91613ee.jpeg" width="200" /></a>Wireless Charging </h3>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Wireless charging is another exciting feature. Even though it
seems that you have to pay extra for this<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
Rest feature </h3>
<h3 style="text-align: left;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGu5ETF75VkfCSjcvovLnVX8s1_kf2mcD8aIbpPSCDNsD1TjLlUTbBP3a65npBi_IzR_b7wcSI_PquXektXu_ZvZIjS1J7VVYoO7hMk-GDjMTR4lpgwZ564uHODj58Yb_IK0D4xWbyGGY/s1600/1f217c342371b11e7ddacfb2bc7a3d50f91613ee.jpeg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a></div>
</h3>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
I don’t go into the race of upgrading Hardware (i.e. RAM,
Internal Memory and processor) until software is not optimised to utilise all
its resources. There are lots of phone which hung and turn slow even after
having 3 GB or more RAM. Samsung has heating issue with all its previous phone.
Heating issue is generally common in all phone because of steal body and
compact design.</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<br />
<div class="MsoNormal">
Samsung S8 is dust and water proof for 30 min which is quite
long time.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
I would suggest to go for it.</div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-87742980969320323882016-10-06T02:29:00.000-07:002016-10-06T02:29:17.011-07:00Pixel android made by Google launch, specification <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
<span style="font-family: inherit;">Pixel ended Google nexus phone. Pixel is very high end phone
and supposed to be compete with iPhone 7. It seems very exciting piece of
product with best performing camera standard. <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;">Pre order of Pixel two variant Pixel and Pixel XL will be
start from 13<sup>th</sup> October. Pixel and Pixel XL both will be powered by
latest android O.S i.e. android Nougat.<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<h2 style="text-align: left;">
<span style="font-family: inherit;">User will be interacted with following unique feature of
Google Pixel </span></h2>
<div class="MsoNormal">
</div>
<ul style="text-align: left;">
<li><b>The first phone with the Google Assistant built in.</b></li>
<li><b>The highest rated smartphone camera. Ever -</b> With a best-ever
89 DxOMark Mobile score, Pixel's camera lets you take brilliant photos in low
light, bright light or any light. </li>
<li><b>Unlimited storage for all your photos and videos.</b></li>
<li><b>Care by Google –</b> </li>
</ul>
<div style="text-align: justify;">
will be the greatest feature of this phone.
With your Pixel, you can get support no matter where you are. Your Google
expert is just a tap away, day or night. Need help? Just open the Settings app
and tap the Support tab. </div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqk1vW1Li1Yj3UZbFmZCRAWQWKMMdFp5gogdmpSg7YCTLsYXbtaXwZaRm3gUu-5-OKT7hrmWM5qopZYFOzJdhcAWeFPEVltdK60-cXsHCAMRZB2hWSh8OHoYA0g5uiaQtOAMLieRTNo6A/s1600/care.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="636" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqk1vW1Li1Yj3UZbFmZCRAWQWKMMdFp5gogdmpSg7YCTLsYXbtaXwZaRm3gUu-5-OKT7hrmWM5qopZYFOzJdhcAWeFPEVltdK60-cXsHCAMRZB2hWSh8OHoYA0g5uiaQtOAMLieRTNo6A/s640/care.png" width="640" /></a></div>
<br />
<br />
<div class="MsoNormal">
<o:p></o:p></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-29314004766512187492016-09-15T02:32:00.001-07:002016-09-15T02:33:18.164-07:00Source code of flip front camera mirror flipped video, Reverse flip front camera video<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
While taking video from front camera, its shows preview like
a mirror. Your left ear will be shown as right in camera preview. <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
If you pick example from snapchat, they simply show video
same as like camera preview was showing. And that feature looks good. User want
the exact picture which one’s seeing in preview, if it translate it can
completely change video look.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
<span style="color: #20124d; font-family: inherit;">Contact me for source code, implementation help and following
features</span></h3>
<div class="MsoNormal">
</div>
<ul style="text-align: left;">
<li><span style="font-family: "courier new"; font-size: 10.5pt; line-height: 107%; text-indent: -0.25in;"><span style="font-family: "times new roman"; font-size: 7pt; font-stretch: normal; line-height: normal;"> </span></span><span style="text-indent: -0.25in;">Ready to use code</span></li>
<li><span style="text-indent: -0.25in;">Camera preview rotation fix on most of the
device</span></li>
<li><span style="color: windowtext; text-decoration: none; text-underline: none;">Android flip
front camera mirror flipped video</span></li>
<li><span style="text-indent: -0.25in;">Video player and Camera preview full source with
ownership</span></li>
<li><span style="text-indent: -0.25in;">Extra support in integrating</span></li>
</ul>
<br />
<div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpLast" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoNormal">
Email me your requirement on
<b>codeinandroid@gmail.com/abdul.tofeeq@gmail.com.<o:p></o:p></b></div>
<br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<a href="http://androidtrainningcenter.blogspot.in/2016/09/stop-front-facing-camera-from-mirroring.html" target="_blank">See how to reverse flip video taken from front facingcamera. </a><o:p></o:p></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-12289674948622291902016-09-15T01:03:00.002-07:002016-09-15T01:03:37.768-07:00Stop front facing camera from mirroring (inverting) image programmatically?<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
While taking picture from front camera, its shows preview
like a mirror. Your left ear will be shown as right in camera preview. <a href="http://androidtrainningcenter.blogspot.in/2012/01/how-to-use-android-camera-to-take.html" target="_blank">Referhow to take picture from Camera and SurfaceView</a> for camera basics. <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
If you pic example from snapchat, they simply show picture
same as like camera preview was showing. That feature looks good. User want the
exact picture which one’s seeing in preview, if it translate it can completely
change image/picture look.<o:p></o:p></div>
<div class="MsoNormal">
When you capture bitmap from byte array, you can translate
it back to what was showing in camera preview. Look at code below – <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="background: white; margin-bottom: 0.0001pt;">
<span style="font-family: "Courier New"; font-size: 10.5pt;">Matrix matrix = </span><b><span style="color: navy; font-family: "Courier New"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">new </span></b><span style="font-family: "Courier New"; font-size: 10.5pt;">Matrix(); <br />
</span><b><span style="color: navy; font-family: "Courier New"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">if </span></b><span style="font-family: "Courier New"; font-size: 10.5pt;">(</span><b><span style="color: #660e7a; font-family: "Courier New"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">face</span></b><span style="font-family: "Courier New"; font-size: 10.5pt;">) { </span>// reverse
flipping of image should only need to be handle for front facing camera<br />
<span style="font-family: "Courier New"; font-size: 10.5pt;">
matrix.preScale(</span><span style="color: blue; font-family: "Courier New"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">1.0f</span><span style="font-family: "Courier New"; font-size: 10.5pt;">, -</span><span style="color: blue; font-family: "Courier New"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">1.0f</span><span style="font-family: "Courier New"; font-size: 10.5pt;">);<br />
} <o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Apply matrix to bitmap and create a new one –<o:p></o:p></div>
<pre style="background: white;"><span style="font-size: 10.5pt;">Bitmap new_bitmap = Bitmap.<i>createBitmap</i>(</span><b><span style="color: #660e7a; font-size: 10.5pt;">bitmap</span></b><span style="font-size: 10.5pt;">, </span><span style="color: blue; font-size: 10.5pt;">0</span><span style="font-size: 10.5pt;">, </span><span style="color: blue; font-size: 10.5pt;">0</span><span style="font-size: 10.5pt;">, </span><b><span style="color: #660e7a; font-size: 10.5pt;">bitmap</span></b><span style="font-size: 10.5pt;">.getWidth(), </span></pre>
<pre style="background: white;"><b><span style="color: #660e7a; font-size: 10.5pt;">bitmap</span></b><span style="font-size: 10.5pt;">.getHeight(), matrix, </span><b><span style="color: navy; font-size: 10.5pt;">true</span></b><span style="font-size: 10.5pt;">); <o:p></o:p></span></pre>
<pre style="background: white;"><span style="font-family: "Calibri","sans-serif"; font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;">// bitmap is old bitmap which we created from byte array of camera stream</span><span style="font-size: 10.5pt;"><o:p></o:p></span></pre>
<div class="MsoNormal">
<br /></div>
<br />
<h3 style="text-align: left;">
See how to reverse flip video taken from front facing
camera. </h3>
<div>
<br /></div>
<div class="MsoNormal">
<o:p></o:p></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-1243705276575179722016-07-27T02:53:00.004-07:002016-07-27T02:53:42.333-07:00Release of Blackberry DTEK50 powered by android, survival effort <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
In 2010 Blackberry lost top spot to iPhone and since then
only downfall of blackberry continues. There was a time when thumb injury cause
by blackberry phone was named blackberry injury.<o:p></o:p></div>
<div class="MsoNormal">
No hardware can match blackberry in the field of security.
Now blackberry has decide to launch their feature combine with android o.s.
being a fan of android and blackberry I am very happy to see this news.
Blackberry is launching BlackBerry DTEK50.<o:p></o:p></div>
<div class="MsoNormal">
Blackberry will possibly be lauded will latest android
version Nougat. <o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
DTEK50, The World’s Most Secure Android™ Smartphone Keeps
the private details of your life safe.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaOeQI7jjdG93SfUHgI5oVkdYDwMd2ZjVYJaEKB__QGZMQbDwW2_VyYUabk4dgTh91QkDd6JS29PY_T0y1QWqKt-ksIb8LDeKQqoRUQkirRhOOXrdjnFBdqtlROhABuqYqo5yoG422PbI/s1600/400x500_Front_EN.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaOeQI7jjdG93SfUHgI5oVkdYDwMd2ZjVYJaEKB__QGZMQbDwW2_VyYUabk4dgTh91QkDd6JS29PY_T0y1QWqKt-ksIb8LDeKQqoRUQkirRhOOXrdjnFBdqtlROhABuqYqo5yoG422PbI/s320/400x500_Front_EN.png" width="256" /></a></div>
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDDv7IVeg7x-apJhCXwAv-MKoHBlBeyv5JMpnCLstmR2YDpbsDX8308JiLSTFErypBrBDAfcbTRXul_44WyK3M55mgR2yNlrafGl_OzuD-oKDCE34E-x5K36W1l0TnjnwxuJTZPAT7CK4/s1600/400x500_Neon_bundle_Opt4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDDv7IVeg7x-apJhCXwAv-MKoHBlBeyv5JMpnCLstmR2YDpbsDX8308JiLSTFErypBrBDAfcbTRXul_44WyK3M55mgR2yNlrafGl_OzuD-oKDCE34E-x5K36W1l0TnjnwxuJTZPAT7CK4/s400/400x500_Neon_bundle_Opt4.png" width="320" /></a><br />
<div style="text-align: left;">
<b><span style="font-size: large;">Features:</span></b></div>
<div style="text-align: left;">
<span style="font-size: x-large;"><b><br /></b></span></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
Fully Android<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
Access to over a million apps from
Google Play<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
5.2” scratch resistant display<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
Intelligent Keyboard<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
Convenience Key<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
8MP front camera with flash and
13MP auto-focus rear camera<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: .5in;">
2TB microSD card support</div>
<div class="MsoNormal" style="margin-left: .5in;">
<span style="font-family: "calibri" , sans-serif; font-size: 11pt; line-height: 107%; text-indent: -0.25in;">BlackBerry Security that protects the private
details of your life from being hacked</span></div>
<div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<span style="font-size: large;"><b>Extra Features -</b></span> <b>BlackBerry MP-12600 Mobile Power Charger</b>,
a high capacity portable charger that powers all your mobile devices to
maximize your productivity and play time.<o:p></o:p></div>
<div class="MsoNormal">
Release date <o:p></o:p></div>
<div class="MsoNormal">
The bundle is expected to start shipping the week of August 8th 2016<o:p></o:p><br />
<br />
<div class="MsoNormal">
<span style="font-size: large;">Price Estimated Total Incl. </span>VAT: £294.58<o:p></o:p></div>
</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<div style="text-align: center;">
<span style="font-size: x-large;"><a href="https://shop.blackberry.com/store?Action=DisplayPage&Env=BASE&Locale=en_GB&SiteID=bbrryus&id=ThreePgCheckoutShoppingCartPage" target="_blank">Pre Order </a></span><o:p></o:p></div>
</div>
<div class="MsoNormal">
<br /></div>
<br />
<div class="MsoNormal">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-38998690435900774092016-07-18T23:56:00.004-07:002016-07-21T00:48:02.816-07:00Evolving android, points where Google android sucks because of OEM<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="MsoNormal">
<o:p> </o:p>I was thinking a lot lately that Google is working hard to
provide user a great android experience. Google is launching new fixes on
monthly basis, launching a new version almost every year with ton of new
features. But if we see distribution of android version over the phone market,
we will be stunned by statistics. Many android customer have outdated version of
android.</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Some OEM believes in concept of loading hardware and
software once in a lifetime like Micromax, Chinese mobile maker while most OEM
only providing update to their premium phones or say flagships.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
This approach is killing Google Android. I admit providing software
update to existing hardware takes lot of money which OEMs don’t want to do for
cheap phones. Only flagship which meant to bind with their reputation is their
priority. Unlike iPhone its very hard to bring OEM and Google at same level while providing update<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Look at current android distribution. Almost 70% percent of
market is occupied by Kitkat and lower version of android while Google announced
a new android nougat to be launch soon. I presume only some phone with Lollipop
have possibility to get update of android nougat. So again the gap will only
increase over the time<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD_fDrJxIQpiNinlsi4AQBqMxmBMKmAL5MKLNztzJ4j8i2hWf_SjgG-RLau4M9mEk3bz5LZY9jCc_alQT6KbYp1Ho0PmSP4x38zVtmKRF4UYTyb5hSjhMfm8ViJneMs_CONfw1wYNQKcQ/s1600/chart.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD_fDrJxIQpiNinlsi4AQBqMxmBMKmAL5MKLNztzJ4j8i2hWf_SjgG-RLau4M9mEk3bz5LZY9jCc_alQT6KbYp1Ho0PmSP4x38zVtmKRF4UYTyb5hSjhMfm8ViJneMs_CONfw1wYNQKcQ/s1600/chart.png" /></a></div>
<br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<h2 style="text-align: left;">
Who is suffering?</h2>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
Obliviously android and its user are the one who suffer most
by this. Android’s team hard work and latest update are not reaching to
millions of users, on the hand people are willing to move but they bound by
limitations of their OEM. Eventually android suffers in the whole process<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h2 style="text-align: left;">
Solution! </h2>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
For current market strategies, competition is so high to
sell devices for android manufacture that they are not going to pay attention
on hardware which can support some level upgrade for new android version. Their
only purpose is to sell android phone. So one solution is customer will have to
buy new android phone every year.<o:p></o:p></div>
<div class="MsoNormal">
Second possible solution is OEM should do minimum changes in
android source so that they will prepare new upgrade for their existing customers
at minimum cost. But this will wipe out the creativity and diversity in android
market<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<b>Continue…..<o:p></o:p></b></div>
<br />
<div class="MsoNormal">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-28046336691676156442016-07-17T02:40:00.002-07:002016-07-17T02:40:57.904-07:00Android Nougat Developer Preview Multi Window Support in application<div dir="ltr" style="text-align: left;" trbidi="on">
Android didn't have support for running multiple activities and application in a single screen. Android phone screen was used only by single App. Even though some OEM like Samsung was supporting this on their level by customising android source code.<br />
<br />
But now android officially supported multi window features.<span style="font-family: inherit;"> <span style="background-color: white; font-size: 16px; line-height: 24px;">On handheld devices, two apps can run side-by-side or one-above-the-other in </span><em style="background-color: white; font-size: 16px; line-height: 24px;">split-screen</em><span style="background-color: white; font-size: 16px; line-height: 24px;"> mode. On TV devices, apps can use </span><em style="background-color: white; font-size: 16px; line-height: 24px;">picture-in-picture</em><span style="background-color: white; font-size: 16px; line-height: 24px;"> mode to continue video playback while users are interacting with another app</span><span style="background-color: white; color: rgba(0, 0, 0, 0.682353); font-size: 16px; line-height: 24px;">.</span></span>Lets discuss how developer has to cope with new changes<br />
<br />
<h3 style="text-align: left;">
Types of <span style="background-color: white; color: rgba(0, 0, 0, 0.870588); font-family: Roboto, sans-serif; line-height: 32px;">Multi-window Support </span></h3>
<div>
<ul style="text-align: left;">
<li><span style="background-color: white; font-family: inherit; line-height: 32px;"><b>Split screen Mode -</b> </span><span style="background-color: white; font-family: inherit; line-height: 24px;">In this mode, the system fills the screen with two apps, showing them either side-by-side or one-above-the-other. The user can drag the dividing line separating the two to make one app larger and the other smaller.</span></li>
</ul>
</div>
<div>
<ul style="text-align: left;">
<li><span style="font-family: inherit;"><b>Picture in Picture Mode - </b></span><span style="background-color: white; font-family: inherit; line-height: 24px;">On Nexus Player running Android N, apps can put themselves in </span><a href="https://developer.android.com/preview/features/picture-in-picture.html" style="background-color: white; font-family: inherit; line-height: 24px; text-decoration: none;">picture-in-picture mode</a><span style="background-color: white; font-family: inherit; line-height: 24px;">, allowing them to continue showing content while the user browses or interacts with other apps.</span></li>
</ul>
</div>
<div>
<ul style="text-align: left;">
<li><span style="font-family: inherit;"><b>FreeForm Mode -</b> </span><span style="background-color: white; font-family: inherit; line-height: 24px;">Manufacturers of larger devices can choose to enable freeform mode, in which the user can freely resize each activity. If the manufacturer enables this feature, the device offers freeform mode in addition to split-screen mode.</span></li>
</ul>
</div>
<div>
<h2 id="configuring" style="-webkit-background-clip: padding-box; background-clip: padding-box; background-color: white; border-top-color: transparent; border-top-style: solid; border-top-width: 64px; clear: left; line-height: 32px; margin: -64px 0px 0px; padding: 12px 0px 0px;">
<span style="font-family: inherit; font-size: small;">Configuring Your App for Multi-Window Mode </span><span style="font-family: inherit; font-size: small; font-weight: 400;">Android Multi-window support provide attributes to customise your application </span></h2>
</div>
<div>
<span style="font-family: inherit;"><br /></span></div>
<div>
<h4 id="resizeableActivity" style="-webkit-background-clip: padding-box; background-clip: padding-box; background-color: white; border-top-color: transparent; border-top-style: solid; border-top-width: 64px; line-height: 24px; margin: -64px 0px 0px; padding: 4px 0px 8px;">
<ul style="text-align: left;">
<li><span style="font-family: inherit;">android:resizeableActivity -<span style="font-weight: 500;"> True or False decide either you want your app to support Multi-Window</span></span></li>
<li><span style="font-family: inherit;">android:supportsPictureInPicture -<span style="font-weight: 500;"> Boolean value decide this feature is supported or not. This attribute is ignored if</span></span><code style="-webkit-font-smoothing: subpixel-antialiased; font-stretch: normal; font-weight: 500; line-height: 18px;">android:resizeableActivity</code><span style="font-family: inherit; font-weight: 500;"> is false.</span></li>
<li><span style="font-family: inherit; line-height: 32px;">Layout attributes -<span style="font-weight: 500;"> Layout width, height can decide how much minimum space your app required to run.</span></span><span style="background-color: transparent; font-family: inherit; font-weight: 500;">You can query either your application running in picture in picture mode or running in Mult-Window support</span></li>
</ul>
</h4>
</div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-48008317189944585502016-07-14T23:21:00.002-07:002016-07-18T22:51:00.410-07:00Google Assistance Android Nougat, Ambitious project of google in 2016<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="text-align: left;">
<span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;"><br /></span><span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;">Allo, a smart messaging app<br style="color: rgba(0, 0, 0, 0.870588); content: " ";" /> </span></h2>
<div class="MsoNormal">
<span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;"><br /></span></div>
<div class="MsoNormal">
<span style="font-size: 13pt; line-height: 107%;"><span style="color: rgba(0 , 0 , 0 , 0.870588);"><span style="font-family: inherit;">Allo is a
smart messaging app that makes your conversations easier and more expressive.
It’s based on your phone number, so you can get in touch with anyone in your
phonebook. And with deeply integrated machine learning, Allo has smart features
to keep your conversations flowing and help you get things done.</span></span></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBREKzal53TaY52r1zm-sC4qoxKPyc3aHySxZqKA3N817XtXP7Ni5nOGMaYb93m_8ot98paXtH-beEnkjVStnjRN6IFaToYaToec8rf3LP0msv82Q2ZS7EzvbjwlFDdDAutk6jrfmp0Vw/s1600/1-Expressiveness_animation_v4-GIF_abbrev.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBREKzal53TaY52r1zm-sC4qoxKPyc3aHySxZqKA3N817XtXP7Ni5nOGMaYb93m_8ot98paXtH-beEnkjVStnjRN6IFaToYaToec8rf3LP0msv82Q2ZS7EzvbjwlFDdDAutk6jrfmp0Vw/s1600/1-Expressiveness_animation_v4-GIF_abbrev.gif" /></a> <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7BA-7MC-YcLsXtAnMLy09oygKCUvLebxECFYsu-p0wYH8uZXDZzW22dm77VjvBvFQHLsu1-iuzFUFc0gngdVjn1fQbhhh2BOfpaV_ipxTiP62jZpM__rD8qXzwp6Osc2uajDPAweb0SQ/s1600/3-Gbot_animation_v4-GIF_abbrev+%25281%2529.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7BA-7MC-YcLsXtAnMLy09oygKCUvLebxECFYsu-p0wYH8uZXDZzW22dm77VjvBvFQHLsu1-iuzFUFc0gngdVjn1fQbhhh2BOfpaV_ipxTiP62jZpM__rD8qXzwp6Osc2uajDPAweb0SQ/s320/3-Gbot_animation_v4-GIF_abbrev+%25281%2529.gif" width="157" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWn30c6aLSDK9AOcdIUS72Z60ussfAQaWa8V6dkWKeHDFcCjKF2nGeTAUfIjZP8nZzqA_A-LszlUzPHAiElHBBN4zHorwVyq0JUJL-qgahbvkC8MN5HGFqcqTzzd05cevjz3WViax5Ixc/s1600/2-Smart-Replies_animation_v6-GIF_abbrev.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWn30c6aLSDK9AOcdIUS72Z60ussfAQaWa8V6dkWKeHDFcCjKF2nGeTAUfIjZP8nZzqA_A-LszlUzPHAiElHBBN4zHorwVyq0JUJL-qgahbvkC8MN5HGFqcqTzzd05cevjz3WViax5Ixc/s1600/2-Smart-Replies_animation_v6-GIF_abbrev.gif" /></a></div>
<div class="MsoNormal">
<span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;"><span style="color: rgba(0 , 0 , 0 , 0.870588);"><br /></span></span></div>
<h2 style="text-align: left;">
<span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;"> </span><span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;">Duo, a video calling app for everyone<br style="color: rgba(0, 0, 0, 0.870588); content: " ";" /> </span></h2>
<div>
<span style="font-family: "arial" , "sans-serif"; font-size: 13.0pt; line-height: 107%;"><br /></span></div>
<br />
<div class="MsoNormal">
<span style="font-size: 13pt; line-height: 107%;"><span style="color: rgba(0 , 0 , 0 , 0.870588);"><span style="font-family: inherit;">Duo is a
simple, fast one-to-one video calling app for everyone—whether you’re on
Android or iOS, a fast or slow connection, in New York or New Delhi. Like Allo,
Duo is based on your phone number, allowing you to reach anyone in your
phonebook. And its simple interface fades away when you’re in a call, so it’s
just the two of you.</span></span></span><span style="font-family: "arial" , "sans-serif";"><o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-size: 13pt; line-height: 107%;"><span style="color: rgba(0 , 0 , 0 , 0.870588);"><span style="font-family: inherit;"><br /></span></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/CIeMysX76pM/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/CIeMysX76pM?feature=player_embedded" width="320"></iframe></div>
<div class="header" style="background: white; line-height: 13.2pt; margin-bottom: 12.0pt; margin-left: 0in; margin-right: -105.0pt; margin-top: 0in;">
<b><span style="font-family: "arial" , sans-serif;"><br /></span></b></div>
<h2 style="background: white; line-height: 13.2pt; margin-bottom: 12.0pt; margin-left: 0in; margin-right: -105.0pt; margin-top: 0in;">
<b><span style="font-family: "arial" , sans-serif;"><br /></span></b></h2>
<div class="separator" style="clear: both; text-align: center;">
</div>
<h2 style="background: white; line-height: 13.2pt; margin-bottom: 12.0pt; margin-left: 0in; margin-right: -105.0pt; margin-top: 0in;">
<b><span style="font-family: "arial" , sans-serif;">Google Home Always on call.</span></b></h2>
<div class="separator" style="clear: both;">
</div>
<div class="subheader" style="background: white; box-sizing: inherit; line-height: 20.25pt; margin: 0in 0in 0.0001pt;">
<span style="font-size: 13.5pt;"><span style="font-family: inherit;">Google Home is a voice-activated home product that allows you
and your family to get answers from Google, stream music, and manage
everyday tasks.</span></span></div>
<div class="subheader" style="background: white; box-sizing: inherit; line-height: 20.25pt; margin: 0in 0in 0.0001pt;">
<span style="font-size: 13.5pt;"><span style="font-family: inherit;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP50oZu1mAIv-3JQ-0ehnLPBB4TYz_Q4vk9-6mwVsr4LbRAfk66Ij-OcuUSf_ZGmX2-PXVhkakY3MAFwIYBBtaRrG43lY19-cXuI9pDo7FY-IFJXtkYe8hWWmirRbMprfw2bl6rd3miwY/s1600/Google-Home-.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="356" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP50oZu1mAIv-3JQ-0ehnLPBB4TYz_Q4vk9-6mwVsr4LbRAfk66Ij-OcuUSf_ZGmX2-PXVhkakY3MAFwIYBBtaRrG43lY19-cXuI9pDo7FY-IFJXtkYe8hWWmirRbMprfw2bl6rd3miwY/s640/Google-Home-.jpg" width="640" /></a></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<b>Note –</b> Image shown in this article are taken from google so
we don’t have any right over these image.<o:p></o:p></div>
<div class="MsoNormal">
<span style="font-size: 13pt; line-height: 107%;"><span style="color: rgba(0 , 0 , 0 , 0.870588);"><span style="font-family: inherit;"><br /></span></span></span></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-53522298733418669212016-04-13T00:07:00.001-07:002016-04-13T00:07:33.069-07:00Meet HTC 10: HTC 10 Launch, Specification, Hardware information<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
HTC’s new flagship phone HTC 10 is complete transition from
HTC previous variant with Ultra Pixel camera, Hi-res audio and full metallic body.<o:p></o:p></div>
<div class="MsoNormal" style="background: white; line-height: 15.6pt; margin-bottom: 11.25pt; mso-outline-level: 3; vertical-align: baseline;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 15.6pt; margin-bottom: 11.25pt; mso-outline-level: 3; vertical-align: baseline;">
<b>HTC quote </b><o:p></o:p></div>
<blockquote class="tr_bq">
HTC 10. It’s more of what you’re looking for in a flagship
phone. Unparalleled performance. Superb 24-bit Hi-Res sound. The world’s first* Optical Image Stabilization in both front and back
cameras. And one of the highest smartphone camera rankings ever from <a href="http://www.dxomark.com/Mobiles" target="_blank"><span style="color: windowtext; text-decoration: none; text-underline: none;">DxOMark</span></a>. All in a beautifully crafted metal unibody.</blockquote>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
HTC 10 release date and price</h3>
<div>
<br /></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
HTC 10 is fully launched and preorders have been started at
HTC official site. But HTC 10 will take time to land in stores. <o:p></o:p></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/lQlCeVO4hag/0.jpg" src="https://www.youtube.com/embed/lQlCeVO4hag?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<br />
<div class="MsoNormal" style="background: white; line-height: 18.75pt; margin-bottom: .0001pt; margin-bottom: 0in; vertical-align: baseline;">
<span style="color: #222222; font-family: "Arial","sans-serif"; font-size: 10.5pt; mso-fareast-font-family: "Times New Roman";">HTC's new flagship smartphone will be out on May 2016 worldwide
and it will cost around US$699.99 (it’s very early estimate)<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<h4 style="text-align: center;">
<b><a href="http://www.htc.com/us/go/buy-htc-10/" target="_blank">Preorder HTC 10</a> </b></h4>
<div class="MsoNormal" style="text-align: center;">
<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<b>Dimensions and Weight1 </b></div>
<div class="separator" style="clear: both; text-align: center;">
<b><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBLuCNNs_C699WRoPlAqksiSuyq8RWduO-qoXGAXlc8vvcZZS0RK8XHAyZBr9Jxs_2fq7dT6E_KqCkT7uncX8YGQxhm5ISqDplDS7oK65NGb49JFDwVsrDkQ1WFHxcmAGnMooIXzRioGw/s1600/performance_front-US.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBLuCNNs_C699WRoPlAqksiSuyq8RWduO-qoXGAXlc8vvcZZS0RK8XHAyZBr9Jxs_2fq7dT6E_KqCkT7uncX8YGQxhm5ISqDplDS7oK65NGb49JFDwVsrDkQ1WFHxcmAGnMooIXzRioGw/s400/performance_front-US.png" width="366" /></a></b></div>
<b><o:p></o:p></b><br />
<div class="MsoNormal">
145.9 x 71.9 x 3.0 - 9.0 mm, 161g<o:p></o:p></div>
<div class="MsoNormal">
<b>Platform Android2<o:p></o:p></b></div>
<div class="MsoNormal">
Android™ 6 with HTC Sense<o:p></o:p></div>
<div class="MsoNormal">
<b>Main Camera<o:p></o:p></b></div>
<div class="MsoNormal">
12MP (HTC UltraPixel™ 2 with 1.55μm pixel)<br />
Laser Autofocus<br />
BSI sensor<br />
Optical Image Stabilisation (OIS)<o:p></o:p></div>
<div class="MsoNormal">
<b>Sound<o:p></o:p></b></div>
<div class="MsoNormal">
HTC BoomSound™ Hi-Fi Edition<br />
Dolby Audio™<br />
Personal Audio Profile<br />
Hi-Res audio certified<br />
Hi-Res audio earphones<br />
<!--[endif]--><o:p></o:p></div>
<div class="MsoNormal">
<b>Display<o:p></o:p></b></div>
<div class="MsoNormal">
5.2 inch, Quad HD (2560 x 1440 pixels)<br />
Pixel density at 564 ppi (pixel per inch)<br />
Super LCD 5<br />
Curve edge Gorilla Glass<br />
Display colour personalization<o:p></o:p></div>
<div class="MsoNormal">
SIM Card Type<o:p></o:p></div>
<div class="MsoNormal">
Nano SIM<o:p></o:p></div>
<div class="MsoNormal">
<b>Front Camera<o:p></o:p></b></div>
<div class="MsoNormal">
5MP (1.34μm pixels)<br />
Autofocus<br />
BSI sensor<br />
Optical Image Stabilisation (OIS)<o:p></o:p></div>
<div class="MsoNormal">
<b>Battery and Charging
Speed5<o:p></o:p></b></div>
<div class="MsoNormal">
Capacity: 3000 mAh<br />
Talk time on 3G/4G network: up to 27 hours<br />
Standby time on 3G/4G network: up to 19 days<br />
Power saving mode<br />
Extreme power saving mode<br />
Quick Charge 3.0 with cool charge<br />
Up to 50% charge in 30 min<o:p></o:p></div>
<div class="MsoNormal">
<b>CPU Speed<o:p></o:p></b></div>
<div class="MsoNormal">
Qualcomm® Snapdragon™ 820, Quad Core, 64bit, up to
2.2GHz<o:p></o:p></div>
<div class="MsoNormal">
<b>Memory3<o:p></o:p></b></div>
<div class="MsoNormal">
ROM: 32GB / RAM: 4GB<br />
Available storage for users: about 23GB<br />
Extended memory: microSD™ up to 2TB<br />
Flex Storage supported<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<br />
<div class="MsoNormal">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-55564091862505094522016-03-29T23:15:00.000-07:002016-07-28T23:01:15.442-07:00Bluetooth low energy points : Android BLE (Bluetooth Low energy) works and save power<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
BLE is a low energy version of Bluetooth specified in the
version 4.0 [1]. Two of the lowest layers of BLE stack are Physical (PHY) and
the Link Layer (LL). PHY takes care of transmitting and receiving bits. The
Link Layer provides medium access, connection establishment, error control, and
flow control. The upper layers are Logical Link Control and Adaptation Protocol
(L2CAP), Generic Attribute protocol (GATT), and Generic Access Profile (GAP).
L2CAP is able to multiplex the data channels from the above layers and provides
fragmentation and reassembly for large data packets. Similar to classic
Bluetooth (BT), BLE uses adaptive frequency hopping spread spectrum to access
the shared channel. However, the number of hops is 43 and the channel width is
2MHz as opposed to 79 hops and 1MHz channel width in classic BT.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
How BLE save energy?</h3>
<div>
<br /></div>
<div class="MsoNormal">
BLE device can operate either in master or slave role. A
master can manage multiple simultaneous connections with a number of slave
devices, but a slave can only be connected to a single master. Therefore, a BLE
network topology is a star. Differently from classic BT, discovery is done so
that slave advertises on one or several of the three designated advertisement
channels. Master scans these channels in order to discover slaves. After
discovery, data transmission happens in the form of connection events in which
the master and the slave wake up in synchrony to exchange frames. Both devices
sleep the rest of time.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<h3 style="text-align: left;">
Things to know about BLE/ BLE android –</h3>
<div>
<br /></div>
<div>
<div class="MsoNormal">
</div>
<ul style="text-align: left;">
<li>BLE operate on GATT/ATT profile</li>
<li>Use very less power compare to classic Bluetooth. Used for
small burst of data exchange such sensors, Remote controllers</li>
<li>BLE doesn’t support streaming</li>
<li>BLE have data rate of 1 mbps but is not optimized for data
transfer</li>
<li>Design for sending small bundle of data
exposing state</li>
</ul>
<o:p></o:p><br />
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<o:p></o:p></div>
</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
<br />
<div class="MsoListParagraphCxSpLast" style="mso-list: l0 level1 lfo1; text-indent: -.25in;">
<o:p></o:p></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-82963928144626463302015-11-16T23:18:00.001-08:002015-11-16T23:18:53.824-08:00LG Watch Urbane 2nd Edition LTE - Cellular support comes to Android Wear<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgdxncfET1Fy4SemlGI3TTt1HlaghFJVs8gbfm3FqVtPHmyWKooqPycogtVVh0PdDzxJGYDYFhWcEFSFe_ZgbzE3mocMKqGDoV66FN8zwjnBAyzWJEDUc9mZnTUgXtbOvIIiW6TR-xl9Q/s1600/Category_Hero_Watch_Urbane2nddt.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgdxncfET1Fy4SemlGI3TTt1HlaghFJVs8gbfm3FqVtPHmyWKooqPycogtVVh0PdDzxJGYDYFhWcEFSFe_ZgbzE3mocMKqGDoV66FN8zwjnBAyzWJEDUc9mZnTUgXtbOvIIiW6TR-xl9Q/s640/Category_Hero_Watch_Urbane2nddt.jpg" width="640" /></a></div>
<div class="MsoNormal" style="line-height: 24.0pt; margin-bottom: 12.0pt; mso-outline-level: 2;">
<span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 24pt;"><br /></span></div>
<div class="MsoNormal" style="line-height: 24.0pt; margin-bottom: 12.0pt; mso-outline-level: 2;">
<span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 24pt;">Android Wear lets you
stay connected, even when your phone isn’t with you. With Bluetooth and Wi-Fi
support, for example, you can see who’s calling when your phone is in the next
room, or respond to messages at the gym while your phone is at home. Today,
we're bringing cellular support to </span><span style="font-family: 'Times New Roman', serif; font-size: 12pt; line-height: 24pt;"><span style="color: #7759ae; font-family: Arial, sans-serif; font-size: 10pt;">Android
Wear</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 24pt;">, so you can stay
connected in even more places. </span></div>
<div class="MsoNormal" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
<div class="MsoNormal" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="color: #444444; font-family: "Arial",sans-serif; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman";">No more worrying about
Bluetooth or Wi-Fi—your watch will automatically switch to a cellular
connection when you’re out of range. As long as your watch and phone are
connected to a cellular network, you’ll be able to use your watch to send and
receive messages, track fitness, get answers from Google, and run </span>your favorite
apps<span style="color: #444444; font-family: "Arial",sans-serif; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman";">. And yes, you’ll even
be able to make and take calls right from your watch, for when your hands are
full, or your phone is elsewhere.<br />
<br />
The first Android Wear watch with cellular support is the <a href="http://www.lg.com/us/smart-watches"><span style="color: #7759ae; text-decoration: none; text-underline: none;">LG Watch Urbane 2nd Edition LTE</span></a>.<o:p></o:p></span></div>
<div class="MsoNormal" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
<div class="MsoNormal" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="color: #444444; font-family: "Arial",sans-serif; font-size: 10.0pt; mso-fareast-font-family: "Times New Roman";"><a href="http://www.lg.com/us/smart-watches/lg-W200-Opal-Blue-lg-watch-urbane-2nd-edition"><span style="color: #444444; text-decoration: none; text-underline: none;">LG Watch Urbane
2nd Edition</span></a><o:p></o:p></span></div>
<div class="MsoListParagraphCxSpFirst" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
</div>
<ul style="text-align: left;">
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;"><a href="http://www.lg.com/us/smart-watches/lg-W200-Opal-Blue-lg-watch-urbane-2nd-edition"><span style="color: #444444; text-decoration: none; text-underline: none;">W200 Opal Blue</span></a></span></li>
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">First LTE Cellular
Android Wear Smartwatch</span></li>
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">Real Watch Design</span></li>
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">Quick Access to
Shortcut Settings With Three Buttons</span></li>
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">480 x 480 High
Resolution Display / 570mAh Long-Lasting Battery</span></li>
<li><span style="color: #444444; font-family: Symbol; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; font-stretch: normal; line-height: normal;">
</span></span><span style="color: #444444; font-family: Arial, sans-serif; font-size: 10pt; line-height: 13.65pt; text-indent: -0.25in;">Interactive Watch
Faces</span></li>
</ul>
<!--[if !supportLists]--><br />
<div class="MsoNormal" style="line-height: 13.65pt; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
<div class="MsoNormal" style="line-height: 24.0pt; margin-bottom: 12.0pt; mso-outline-level: 2;">
<br /></div>
<br />
<div class="MsoNormal">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-53010109550439809562015-05-28T22:50:00.001-07:002015-05-28T22:50:12.880-07:00Android M Developer Preview are here, Whats new in Android M for developer?<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;">Obviously
<strong>Android M
Developer Preview</strong>
comes with more improvement to Android L. Along with new features and
capabilities, the M Developer Preview includes a variety of system
changes and API behavior changes.</span></div>
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;"><br />
</span></div>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-runtime-permissions"></a>Runtime
Permissions</span></h2>
<span style="font-family: inherit;">This preview introduces a new
runtime permissions model, where users can now directly manage their
app permissions at runtime. To determine if your app has been granted
a permission, call the new <code class="western">Context.checkSelfPermission()</code>
method. To request for a permission, call the new
<code class="western">Activity.requestPermission()</code>
method.
</span><br />
<span style="font-family: inherit;"><br /></span>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Power-Saving
Optimizations</span></h3>
<div>
<span style="font-family: inherit; font-size: small;"><br /></span></div>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Doze</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-doze"></a></span></h2>
<span style="font-family: inherit;">If a device is unplugged and
left stationary with the screen off for a period of time, it goes
into <em>Doze</em>
mode where it attempts to keep the system in a sleep state. In this
mode, devices periodically resume normal operations for brief periods
of time so that app syncing can occur and the system can perform any
pending operations.
</span><br />
<h3 class="western">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-app-standby"></a>App
standby</span></h3>
<span style="font-family: inherit;">With this preview, the system
may determine that apps are idle when they are not in active use.
Your app is considered idle after a period of time, unless the system
detects any of these signals:
</span><br />
<span style="font-family: inherit;">The app is explicitly launched
by the user.
</span><br />
<ul>
<li><div style="margin-bottom: 0in;">
<span style="font-family: inherit;">The
app has a process currently in the foreground (either as an activity
or foreground service, or in use by another activity or foreground
service).
</span></div>
</li>
<li><div style="margin-bottom: 0in;">
<span style="font-family: inherit;">The
app generates a notification that users see on the lock screen or in
the notification tray.
</span></div>
</li>
<li><span style="font-family: inherit;">The user explicitly asks
for the app to be exempt from optimizations, via <strong>Settings</strong>.
</span><br />
</li>
</ul>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Adoptable
Storage Devices</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-adoptable-storage"></a></span></h2>
<span style="font-family: inherit;">With this preview, users can
<em>adopt</em>
external storage devices such as SD cards.
</span><br />
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Apache
HTTP Client Removal</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-apache-http-client"></a></span></h2>
<span style="font-family: inherit;">This preview removes support
for the Apache HTTP client. If your app is using this client and
targets Android 2.3 (API level 9) or higher, use the
<code class="western"><a href="http://developer.android.com/reference/java/net/HttpURLConnection.html">HttpURLConnection</a></code>
class instead.
</span><br />
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">AudioManager
Changes</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-audiomanager-Changes"></a></span></h2>
<span style="font-family: inherit;">Setting the volume directly or
muting specific streams via the <code class="western"><a href="http://developer.android.com/reference/android/media/AudioManager.html">AudioManager</a></code>
class is no longer supported. The <code class="western"><a href="http://developer.android.com/reference/android/media/AudioManager.html#setStreamSolo%28int,%20boolean%29">setStreamSolo()</a></code>
method is deprecated, and you should call the
<code class="western">AudioManager.requestAudioFocus()</code>
method instead.
</span><br />
<span style="font-family: inherit;"><br />
</span><br />
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Text
Selection</span></h3>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmOt6LJ6tLMrNUfREmDk1bLsDJJnCybKeSjPpDt_QcI_krNKF6cSz7FiB4P2wN5Ayoj6-gkEZXownwnLV-QaC8vt9Ypr_BesYR_Vdrz6UHMZI1jANHO3_hH2ein0bHduPetBZKjpjjJeI/s1600/text-selection.gif" imageanchor="1" style="clear: right; font-size: medium; font-weight: normal; margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: center;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmOt6LJ6tLMrNUfREmDk1bLsDJJnCybKeSjPpDt_QcI_krNKF6cSz7FiB4P2wN5Ayoj6-gkEZXownwnLV-QaC8vt9Ypr_BesYR_Vdrz6UHMZI1jANHO3_hH2ein0bHduPetBZKjpjjJeI/s640/text-selection.gif" width="360" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><h3>
Text Selection</h3>
</td></tr>
</tbody></table>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Android
Keystore Changes</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-test-selection"></a></span></h2>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-keystore"></a></span></h2>
<span style="font-family: inherit;">With this preview, the <a href="http://developer.android.com/training/articles/keystore.html">Android
Keystore provider</a> no longer supports DSA. ECDSA is still
supported.</span><br />
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Wi-Fi
and Networking Changes</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-network"></a></span></h2>
<ul>
<li><span style="font-family: inherit;">Your apps can now change
the state of <code class="western"><a href="http://developer.android.com/reference/android/net/wifi/WifiConfiguration.html">WifiConfiguration</a></code>
objects only if you created these objects. You are not permitted to
modify or delete <code class="western"><a href="http://developer.android.com/reference/android/net/wifi/WifiConfiguration.html">WifiConfiguration</a></code>
objects created by the user or by other apps.
</span><br />
</li>
</ul>
<ul>
<li><span style="font-family: inherit;">Previously, if an app
forced the device to connect to a specific Wi-Fi network by using
<code class="western"><a href="http://developer.android.com/reference/android/net/wifi/WifiManager.html#enableNetwork%28int,%20boolean%29">enableNetwork()</a></code>
with the <code class="western">disableAllOthers=true</code>
setting, the device disconnected from other networks such as
cellular data. In this preview, the device no longer disconnects
from such other networks. If your app’s <code class="western">targetSdkVersion</code>
is <code class="western">“20”</code>
or lower, it is pinned to the selected Wi-Fi network. If your app’s
<code class="western">targetSdkVersion</code>
is <code class="western">“21”</code>
or higher, use the multinetwork APIs (such as <code class="western"><a href="http://developer.android.com/reference/android/net/Network.html#openConnection%28java.net.URL%29">openConnection()</a></code>,
<code class="western"><a href="http://developer.android.com/reference/android/net/Network.html#bindSocket%28java.net.Socket%29">bindSocket()</a></code>,
and the new <code class="western">ConnectivityManager.bindProcessToNetwork()</code>
method) to ensure that its network traffic is sent on the selected
network.
</span><br />
</li>
</ul>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">Camera
Service Changes</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-camera"></a></span></h2>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;"><br /></span></h3>
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">ART
Runtime</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-art-runtime"></a></span></h2>
<span style="font-family: inherit;">The ART runtime now properly
implements access rules for the <code class="western"><a href="http://developer.android.com/reference/java/lang/reflect/Constructor.html#newInstance%28java.lang.Object...%29">newInstance()</a></code>
method. This change fixes a problem where Dalvik was checking access
rules incorrectly in previous versions.
</span><br />
<span style="font-family: inherit;"><br />
</span><br />
<h3 style="text-align: left;">
<span style="font-family: inherit; font-size: small;">APK
Validation</span></h3>
<h2 class="western">
<span style="font-family: inherit; font-size: small;"><a href="https://www.blogger.com/null" name="behavior-apk-validation"></a></span></h2>
<span style="font-family: inherit;">The platform now performs
stricter validation of APKs. An APK is considered corrupt if a file
is declared in the manifest but not present in the APK itself. An APK
must be re-signed if any of the contents are removed.
</span><br />
<span style="font-family: inherit;"><br /><br />
</span><br />
<br />
<span style="font-family: inherit;"><br /><br />
</span><br />
<span style="font-family: inherit;"><br /><br />
</span><br />
<span style="font-family: inherit;"><br /><br />
</span><br />
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;"><br />
</span></div>
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;"><br />
</span></div>
<div style="margin-bottom: 0in;">
</div>
<div style="margin-bottom: 0in;">
<br />
</div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-71571799868166783622015-03-31T04:48:00.000-07:002015-03-31T04:48:03.874-07:00RecyclerView example, Source code with onItemClickListener <div dir="ltr" style="text-align: left;" trbidi="on">
<h3 style="text-align: left;">
What is RecyclerView?</h3>
<div>
<br /></div>
Android official site states “The RecyclerView widget is a more advanced and flexible version of ListView. This widget is a container for displaying large data sets that can be scrolled very efficiently by maintaining a limited number of views ”<br />
<br />
RecyclerView is generally used when elements changes at run time on user action or network events<br />
<br />
You will need <b>android-support-v7-recyclerview.jar </b>for RecyclerView to integrate in your projects. This article will explain you a way to implement onItemClickListener in RecyclerView.<br />
<br />
Lets implement RecyclerView steps by steps. <span style="font-size: x-large;"><a href="https://www.dropbox.com/s/zxxlzrfu9pmpouo/RecyclerView.zip?dl=0" target="_blank">Source code</a></span> is here in case you may want to skip theory or unable to find android-support-v7-recyclerview.jar<br />
<br />
<h2 style="text-align: left;">
Steps 1- Create android xml layouts</h2>
<pre style="background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> <android.support.v7.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/idRecyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.recyclerview.MainActivity" >
</android.support.v7.widget.RecyclerView> </code></pre>
<br />
<h2 style="text-align: left;">
Steps 2- Create Activity and RecyclerView.Adapter</h2>
<recycleradapter .viewholder=""><b>
MainActivity.java </b><br />
</recycleradapter><br />
<pre style="background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> package com.recyclerview;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity implements OnItemRecycleViewClickListener {
RecyclerView mRecyclerView;
private String[] mData = { "Tofeeq AHmad", "Recycler View", "Layout managers for positioning items", "Default animations for common", "Tofeeq AHmad", "Recycler View",
"Layout managers for positioning items", "Default animations for common", "Tofeeq AHmad", "Recycler View", "Layout managers for positioning items",
"Default animations for common" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mRecyclerView = (RecyclerView) findViewById(R.id.idRecyclerView);
LinearLayoutManager mLinearManager = new LinearLayoutManager(this);
mRecyclerView.setLayoutManager(mLinearManager);
// StaggeredGridLayoutManager mStaggeredGridLayoutManager = new StaggeredGridLayoutManager(1, StaggeredGridLayoutManager.HORIZONTAL);
// mRecyclerView.setLayoutManager(mStaggeredGridLayoutManager);
//
// GridLayoutManager mGridLayoutManager = new GridLayoutManager(this, 2, GridLayoutManager.VERTICAL, false);
// mRecyclerView.setLayoutManager(mGridLayoutManager);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setAdapter(new RecyclerAdapter(mData, this));
}
@Override
public void onItemClicked(int position, RecyclerAdapter mAdapter) {
Toast.makeText(this, String.valueOf(position), Toast.LENGTH_LONG).show();
}
}
</code></pre>
<br /><b>
RecyclerAdapter.java </b><br />
<pre style="background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> package com.recyclerview;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.ViewHolder> {
private String[] mDataset;
OnItemRecycleViewClickListener mOnItemRecycleViewClickListener;
public RecyclerAdapter(String[] myDataset, OnItemRecycleViewClickListener mOnItemRecycleViewClickListener) {
mDataset = myDataset;
this.mOnItemRecycleViewClickListener = mOnItemRecycleViewClickListener;
}
public static class ViewHolder extends RecyclerView.ViewHolder {
public TextView mTextView;
public ImageView mImageView;
public ViewHolder(View v) {
super(v);
mTextView = (TextView) v.findViewById(R.id.txt1);
mImageView = (ImageView) v.findViewById(R.id.imageView);
}
}
@Override
public int getItemCount() {
return mDataset.length;
}
@Override
public void onBindViewHolder(ViewHolder arg0, int arg1) {
arg0.mTextView.setText(mDataset[arg1]);
arg0.itemView.setTag(arg1);
arg0.itemView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mOnItemRecycleViewClickListener.onItemClicked(Integer.parseInt(v.getTag().toString()), RecyclerAdapter.this);
}
});
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int arg1) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.list, parent, false);
ViewHolder vh = new ViewHolder(v);
return vh;
}
}
</code></pre>
<br /><br /><h2>
Steps 3- To Implment onItemClickListener create one interface and attach it with adapter. RecyclerAdapter adapter already have this attach with it in step 2.</h2>
<pre style="background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> package com.recyclerview;
public interface OnItemRecycleViewClickListener {
public void onItemClicked(int position, RecyclerAdapter mAdapter);
}
</code></pre>
<br />
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-57929902440504268362015-02-25T21:56:00.001-08:002015-02-26T22:43:18.472-08:00Motorola surprise with moto e 2nd generation with android lollipop and 4G LTE<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="margin-bottom: 0in;">
After giving high end phone like Nexus 6, Moto X 2nd generation and low end phone like Moto E and Moto G, Motorola come up with surprising budget phone Moto E second generation.Motorola delivered the new Moto E smart phone to some select media organizations overseas. It was previously announced that Motorola would hand-deliver a box to members of the press although it wasn't clear what would be in the box.<br />
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEif_SbmfOWsDTq1TPTO6SqDlWAcZsE7Vy9m3Bj26kZ7F21WxR9cTLPeDEYBbd4N12lYI-akKak-HsGaqYCqUvP3PhXqA7pMrI6UDBX9laZlyFLKcyq_FMvnk4ShrGusfu1NrYhyt9IOStY/s1600/05_City+1_190_v2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEif_SbmfOWsDTq1TPTO6SqDlWAcZsE7Vy9m3Bj26kZ7F21WxR9cTLPeDEYBbd4N12lYI-akKak-HsGaqYCqUvP3PhXqA7pMrI6UDBX9laZlyFLKcyq_FMvnk4ShrGusfu1NrYhyt9IOStY/s1600/05_City+1_190_v2.jpg" height="425" width="640" /></a></div>
<h2 style="margin-bottom: 0in; text-align: left;">
<span style="font-family: inherit;"><span style="color: black; line-height: 0.33in;">Sepcification</span></span></h2>
<div>
<span style="font-family: inherit;"><span style="color: black; line-height: 0.33in;"><br /></span></span></div>
<div style="border: none; margin-bottom: 0in; padding: 0in;">
<span style="line-height: 31.6800003051758px;">The second generation Moto E has a 4G LTE speed, a 4.5-inch qHD display with 540×960 245 ppi IPS resolution and Corning Gorilla Glass 3,1.2GH quad-core 64-bit Qualcomm Snapdragon 410 processor and a 400MHz Adreno 306 GPU. It comes with 8GB storage space and 1GB of RAM. Moto E 2nd has a VGA camera in the front and a 5 megapixel rear camera with autofocus and 720p video recording capabilities. The storage space can be expanded via a MicroSD slot with 32GB limit. Other connectivity options include Wi-Fi, Bluetooth 4.0LE, GPS/ A-GPS, GLONASS, FM radio, and Micro-USB. Phone loaded with 2390 mAh battery and come with customizable back cover with lot of option.</span><br />
<span style="line-height: 31.6800003051758px;"><br /></span></div>
<div style="border: none; line-height: 0.33in; margin-bottom: 0in; padding: 0in;">
<span style="font-family: inherit;"><span style="color: black;"><a href="http://motorola-blog.blogspot.in/2015/02/choose-to-start-your-mobile-journey.html" target="_blank">Motorola states </a></span>
</span></div>
<div style="border: none; margin-bottom: 0in; padding: 0in;">
<span style="line-height: 31.6800003051758px;">Starting today, the new Moto E will begin rolling out in more than 50 countries in North America, Latin America, Europe and Asia. It will be available unlocked in the U.S. at www.motorola.com for $119.99 (3G) and $149.99 (LTE). </span></div>
<br />
<div style="border: none; line-height: 0.33in; margin-bottom: 0in; padding: 0in;">
<br /></div>
</div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-8687975215126032372015-02-18T01:18:00.000-08:002015-02-18T01:18:05.821-08:00Killer Samsung Galaxy S6 teaser is out <div dir="ltr" style="text-align: left;" trbidi="on">
Samsung once again grab eyeball by launching anticipated Samsung Galaxy s6's teaser. Phone is loaded with high end specification. Samsung is facing stiff competition from Chinese phone maker and other mobile manufacturer like LG, Motorola.<br />
<br />
<blockquote class="twitter-video" lang="en">
I am <a href="https://twitter.com/hashtag/TheNextGalaxy?src=hash">#TheNextGalaxy</a>. See how I give more time to others at <a href="https://twitter.com/hashtag/Unpacked?src=hash">#Unpacked</a>.
<a href="https://t.co/zfYs03p90P">https://t.co/zfYs03p90P</a><br />
— SamsungMobile (@SamsungMobile) <a href="https://twitter.com/SamsungMobile/status/567655976849768448">February 17, 2015</a></blockquote>
<div style="margin-bottom: 0in;">
Samsung S6 is expected to come up with
3 GB RAM, 32 GB internal memory (<span style="color: black;"><span style="font-family: Times New Roman, serif;">microSD,
up to 128 GB</span></span>), 5MP front facing
and 20 MP rear camera. Galaxy new avatar will have <span style="color: black;"><span style="font-family: Times New Roman, serif;">1440
x 2560 pixels (~587 ppi pixel density)</span></span><span style="font-family: Times New Roman, serif;">
and </span><span style="color: black;"><span style="font-family: Times New Roman, serif;">5.0
inches (~67.9% screen-to-body ratio)</span></span><span style="font-family: Times New Roman, serif;">
. </span>
</div>
<div style="margin-bottom: 0in;">
<br />
</div>
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;"><b>Other
special features are </b>
</span></div>
<ul>
<li><div style="margin-bottom: 0in;">
<span style="font-family: inherit;">Quad-core
1.3 GHz Cortex-A53 & Quad-core 1.9 GHz Cortex-A57.</span></div>
</li>
<li><div style="margin-bottom: 0in;">
<span style="font-family: inherit;"><a href="http://androidtrainningcenter.blogspot.in/2014/10/android-imagine-invent-and-make-android.html" target="_blank">Lollipop</a> (5.0).</span></div>
</li>
</ul>
<script async="" charset="utf-8" src="//platform.twitter.com/widgets.js"></script>
<br />
<div style="margin-bottom: 0in;">
<span style="font-family: inherit;">Release
date of Samsung Galaxy S6 will first quarter of 2015. Samsung had tried their hand on their own mobile operating system <a href="http://androidtrainningcenter.blogspot.in/2014/12/samsung-to-launch-tizen-os-why-south.html" target="_blank">Tizen</a></span></div>
<br /></div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0tag:blogger.com,1999:blog-88902209727634796.post-36003057648160549902015-01-14T03:29:00.003-08:002015-01-14T03:29:35.181-08:00Android Memory optimization tips and tricks<div dir="ltr" style="text-align: left;" trbidi="on">
Android central process Zygote forked to allocate memory for every other process. Because of limited resource in mobile, memory optimization is necessary in android. Don't ask for more memory if you don't require it. Here are some tips which will help running your application smoothly<br />
<br />
<br />
<ul style="text-align: left;">
<li><b>Enums </b>often require more than twice as much memory as static constants. You should strictly avoid using enums on Android.</li>
</ul>
<ul style="text-align: left;">
<li>Every class in Java (including anonymous inner classes) uses about 500 bytes of code. and every class instance has 12-16 bytes of RAM overhead.</li>
</ul>
<ul style="text-align: left;">
<li>Putting a single entry into a <b>HashMap </b>requires the allocation of an additional entry object that takes 32 bytes </li>
</ul>
<ul style="text-align: left;">
<li>Use optimized container from android framework like <b>SparseArray</b>, <b>SparseBooleanArray</b>, and <b>LongSparseArray</b>. generic <b>HashMap </b>use can be quite memory inefficient because it needs a separate entry object for every mapping so use <b>SparseArray</b>.</li>
</ul>
<ul style="text-align: left;">
<li>Release memory as memory becomes tight </li>
</ul>
<ul style="text-align: left;">
<li>onTrimMemory() callback of Activity help you finding way to release resource. Callbacks like TRIM_MEMORY_RUNNING_LOW, TRIM_MEMORY_RUNNING_MODERATE, TRIM_MEMORY_RUNNING_CRITICAL etc gives you way to release unused resource which eventually help improving performance of your app</li>
</ul>
<ul style="text-align: left;">
<li>Load views on demand using <b>ViewStub </b>read about <b>ViewStub</b></li>
</ul>
<ul style="text-align: left;">
<li>Use multiple process in a single application. Name your background services as separate process like </li>
</ul>
<br />
<service android:name=".PlaybackService" android:process=":background" /></div>
Ahmadhttp://www.blogger.com/profile/00703191824388162129noreply@blogger.com0