registerAppTasks method
void
registerAppTasks()
Implementation
void registerAppTasks(){
registerDataTaskFunction("appBrowserDetected",(Map<String,dynamic> params)async{
Map<String,dynamic> data=await Simplify.appDetails;
data["dataTask"]="isAppBrowserNotify";
sendMessageToWebview(data);
});
registerDataTaskFunction("getCurrentLocation",(Map<String,dynamic> params) async {
Map<String,dynamic >data=params["data"];
simplify.debugMessage("Getting Current Location");
data["dataTask"]="getCurrentLocation";
data["dataTaskResult"]=await LocationHelper.getCurrentLocation();
sendMessageToWebview(data);
});
registerDataTaskFunction("getPosPrintersList", (Map<String,dynamic> params) async {
Map<String,dynamic >data=params["data"];
data["dataTask"]="getPosPrintersList";
// data["dataTaskResult"]=await _printHandler.getPosPrintersList();
sendMessageToWebview(data);
});
registerDataTaskFunction("getPrintersList", (Map<String,dynamic> params) async {
Map<String,dynamic >data=params["data"];
data["dataTask"]="getPrintersList";
data["dataTaskResult"]=await printHelper.getPrintersList();
sendMessageToWebview(data);
});
registerDataTaskFunction("launchUrl",(Map<String,dynamic> params){
Map<String,dynamic >data=params["data"];
if(data.containsKey("launchDetails")){
Map<String,dynamic> launchDetails=data["launchDetails"];
if(launchDetails.containsKey("launchUrl")){
String tempLaunchUrl=launchDetails["launchUrl"].toString();
try{
Simplify.launchUrl(tempLaunchUrl);
}
catch(ex){
Simplify.getExceptionMessage(ex);
}
}
}
});
registerDataTaskFunction("print", (Map<String,dynamic> params) async {
Map<String,dynamic >data=params["data"];
print("Printing Document");
data["dataTask"]="print";
data["dataTaskResult"]=await printHelper.printPdf(data: base64Decode(data.getString("pdf_base64")));
print(data["dataTaskResult"]);
sendMessageToWebview(data);
});
registerDataTaskFunction("printPosByteData", (Map<String,dynamic> params) async {
Map<String,dynamic >data=params["data"];
var printerId="";
var result=Simplify.getDefaultResult();
if(data.containsKey("printer")){
printerId=data["printer"]["id"];
}
else if(data.containsKey("printerId")){
printerId=data["printerId"];
}
else{
result["message"]="printer parameter missing";
}
if(printerId!=""){
if(data.containsKey("rawBytesJson")){
var paperSize="72mm";
if(data.containsKey("paperSize")){
paperSize=data["paperSize"];
}
List<int> rawBytes=List.empty(growable:true);
Map<String, dynamic> originalData=json.decode(data["rawBytesJson"]);
originalData.forEach((key,value) {
rawBytes.add(value as int);
});
}
else{
result["message"]="printing parameters missing";
}
}
data["dataTaskResult"]=result;
sendMessageToWebview(data);
});
registerDataTaskFunction("selectPrinter", (Map<String,dynamic> params) async {
Printing.pickPrinter(context: state.context);
// data["dataTaskResult"]=await _printHandler.getPosPrintersList();
// sendMessageToWebview(data);
});
registerDataTaskFunction("share",(Map<String,dynamic> params){
Map<String,dynamic >data=params["data"];
if(data.containsKey("share")){
Map<String,dynamic> share=data["share"];
if(share.containsKey("shareType")){
if(share["shareType"].toString()=="text"){
if(share.containsKey("shareContent")){
String shareContent=share["shareContent"].toString();
print("Share String : $shareContent");
SimpleShare.shareString(shareContent);
}
}
}
}
});
}