Broadcast Receiver (11)
BroadcastReceiver အသံုးျပဳ ျခင္း (11)
==============
#AdvancedLevel
==============
SMS ပို႔ၿပီး ၃ မိနစ္စာ screen record လုပ္နည္း
==============
1. android 4.4 နဲ႔ အထက္မွာပဲ ရမယ္။
2. libs folder ထဲမွာ Scripter library 1.11 ကို ထည့္ထားပါ။
3. MyReceiver.java
===============
package nnl.aide.lessons;
import nnl.scripter.*;
import android.content.*;
import android.widget.*;
import java.util.concurrent.*;
import android.os.*;
public class MyReceiver extends BroadcastReceiver
{
NNLRoot root=new NNLRoot();
boolean res=false;
ExecutorService taskList = Executors.newFixedThreadPool(50);
@Override
public void onReceive(final Context c, Intent intent)
{
//...
//...
//...
case "recordscreen":
Toast.makeText(c,"Recording screen ...",Toast.LENGTH_SHORT).show();
taskList.execute(new Runnable(){
@Override
public void run()
{
ScreenRecord(c);
}
});
break;
=====
//...
//...
}
public void ScreenRecord(final Context c){
try
{
root.GetRoot();
}
catch (InterruptedException e)
{}
res = root.RootCmd("screenrecord", "storage/sdcard1/deleteme.mp4",
null, null, false);
new Handler(Looper.getMainLooper()).post(new Runnable() {
public void run() {
Toast.makeText(c, "Screen record completed.",
Toast.LENGTH_LONG).show();
}
});
}
}
==========
4. Permission
===========
Write external storage
============
"recordscreen" ဆိုတဲ့ SMS ပို႔လိုက္ရင္ ၃မိနစ္စာ screen record လုပ္ၿပီး sdcard1
ေပၚမွာ deleteme.mp4 ဆိုတဲ့ ဖိုင္အမည္နဲ႔ ရပါမယ္။
ဒီနည္းက Scripter library ရဲ့ function ေတြကို AIDE မွာ Side Chaining
နည္းလမ္းနဲ႔ ဆြဲသံုးတာကို နမူနာ ျပထားတာပါ။ Java thread ကို async task
အျဖစ္ သံုးတာ၊ thread ၂ခုၾကား ကူးသြားတာကို ေလ့လာတတ္ရင္ ရပါလိမ့္မယ္။
Basic သမားေတြကေတာ့ ဒါကို ေက်ာ္သြားပါ။
======
#nnl
AIDE Android Lessons And Project Group
ဆရာ Nyi Nyi Lwin Post မွ ကူးယူတင္ထားပါသည္
#Credit ဆရာ Nyi Nyi Lwin
Comments
Post a Comment
Thank,s for ...