புதியவர்களுக்குஆண்ட்ராய்டு- பயிற்சிகையேடு பகுதி-9 ஒலிபரப்பு பெறுபவைகள்-

மற்ற பயன்பாடுகளிலிருந்து அல்லது கணினியின் அமைவுக்குள்ளிருந்து செய்திகள் ஒலிப்பரப்புவதற்கு பதில் செயல் உருவாவதையே சாதாரணமாக ஒலிபரப்பு பெறுதல் என அழைப்புர் இந்த செய்திகளை சிலசமயம் நிகழ்வுகள் அல்லது நோக்கங்கள்(intents) என்றும் அழைப்பார்கள். உதாரணமாக அவைகளுக்காக பயன்படுத்துவதற்கு தயாராக இருக்கும் அந்த சாதனத்திற்கு ஒரு சில தரவுகள் பதிவிறக்கம் செய்திடவேண்டும் என்று மற்ற பயன்பாடுகளை தெரிந்து கொள்வதற்கு பயன்பாடுகளானது ஒலிபரப்பினை துவக்கிடமுடியும் கணினியின் அமைவிற்காக ஒலிபரப்பு செய்திடும் நோக்கத்தில் ஒலிபரப்பு பெறும் செயலை செயல்படுத்துவதில் 1.ஒலிபரப்பு பெறுபவரை உருவாக்குதல் 2.ஒளிபரப்பு பெறுபவரை பதிவுசெய்தல் ஆகிய இருமுக்கிய படிமுறைகள் உள்ளன
அதுமட்டுமல்லாது மேலும் ஒரு கூடுதலான படிமுறையும் உள்ளது வாடிக்கையாளர் விருமபியவாறான நோக்கத்தை செயல்படுத்துவதற்கு முனைந்தால் உடன் நாம் அந்த நேக்கத்தை உருவாக்குவதற்கும் ஒலிபரப்புவதற்கும் அடையமுடியும்
1ஒளிபரப்பு பெறுபவரை உருவாக்குதல்
BroadcastReceiverஎனும் இனத்தில் ஒரு துனை இனமாக ஒரு BroadcastReceiverஐ செயற்படுத்திடலாம் அதனை தொடர்ந்து ஒரு நோக்கத்தின்(Intent) அளவுகோலாக ஒவ்வொரு செய்தியாக பெறப்படும்இடத்தில் onReceive() எனும் வழிமுறை வழிந்தோடும்
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, “Intent Detected.”,
Toast.LENGTH_LONG).show();
}
}
2ஒளிபரப்பு பெறுபவரை பதிவுசெய்தல்
AndroidManifest.xml எனும் கோப்பில் ஒரு ஒலிபரப்பு பெறுபவரை பதிவு-செய்வதன் மூலம் குறிப்பிட்ட ஒலிபரப்பு நோக்கங்களுக்காக ஒரு பயன்பாடு கவணித்தல் செய்கின்றது.
நாம் ACTION_BOOT_COMPLETED எனும் கணினி உருவாக்கிடும் நிகழ்விற்காக MyReceiver என்பதை பதவுசெய்வதற்கு முயலுவதாக கருதிடுவோம் இங்கு ஆண்ட்ராய்டு அமைவானது துவக்க செயல் முடித்துவிட்டதெனில் கணினியால் ACTION_BOOT_COMPLETED என்பது செயல்படுத்தபடும்

எப்போதெல்லாம் நம்முடைய ஆண்ட்ராய்டு சாதனம் துவங்குகின்றதோ அப்போதெல்லாம் MyReceiver என்பது இடைமறித்திடும் அதனைதொடர்ந்து onReceive()என்பதை செயல்படுத்திடும் மேலும் செயல்படுத்தப்பட்டது(implimented) என்பதை தருக்க உள்பகுதியில் செயல்படுத்திடும்
2.1

வாடிக்கையாளர் விரும்பியவாறு ஒளிபரப்புசெய்தல்
நாம் நம்முடைய பயன்பாடானது தானாகவே வாடிக்கையாளர் விரும்பும் நோக்கத்தை உருவாக்கிடவும் அனுப்பிடவும் விரும்பினால் அதன்பின்னர் நம்முடைய செயல் இனத்திற்குள் sendBroadcast() எனும் வழிமுறையை பயன்படுத்துவதன்மூலம் அந்த நோக்கங்களை உருவாக்கிடவும் அனுப்புவும் செய்திடவேண்டும். நாம் sendStickyBroadcast(Intent)எனும் வழிமுறையை பயன்படுத்தினால் அந்த நோக்கம் ஒட்டியதாக இருக்கும் ஒலிபரப்பு முடிந்த பின்னரும் அதனைசுற்றி அப்படியே நாம் அனுப்பிய நோக்கம் இருக்கும் என்பதே இதன் அர்த்தமாகும்
public void broadcastIntent(View view)
{
Intent intent = new Intent();
intent.setAction(“com.tutorialspoint.CUSTOM_INTENT”);
sendBroadcast(intent);
}
கணினி உருவாக்கிய நோக்கத்தை போன்ற வழியில்இந்த com.tutorialspoint.CUSTOM_INTENT எனும் நோக்கத்தையும் பதிவுசெய்திடவேண்டும்

உதாரணமாக வாடிக்கையாளரின் நோக்கத்தினை இடைமறிப்பதற்கு BroadcastReceiver எவ்வாறு உருவாக்குவது என இந்த எடுத்துகாட்டு விளக்கமாக கூறுகின்றது இந்த வாடிக்கையாளரின் நோக்கத்தில் நன்கு தெளிவடைந்துவிட்டால் அதன்பின்னர் கணினி உருவாக்கிடும் நோக்கத்தின் இடைமறிப்பதற்கு நம்முடைய பயன்-பாட்டினை எழுதமுடியும் அதனால் நம்முடைய “அனைவருக்கம் வணக்கம்” எனும் பயிற்சி கையேட்டு பகுதியில்கூறியவாறு நாம் உருவாக்கிய ஆண்ட்ராய்டு பயன்பாட்டினை மாறுதல் செய்வதற்கு பின்வரும் வழிமுறைகளை பின்பற்றிடுக
2.2
பின்வருவது src/com.example.helloworld/MainActivity.java எனும் கோப்பின் மாறுதல் செய்த முதன்மை செயல்உள்ளடக்கங்களாகும் இந்த கோப்பில் ஒவ்வொரு அடிப்படையான வாழ்க்கைசுழல்செயல் உள்ளடங்கியதாகும் இதில் வாடிக்கையாளர் நோக்கத்தினை ஒலிபரப்புவதற்கு broadcastIntent()எனும் வழிமுறையை சேர்த்துள்ளோம்
package com.example.அனைவருக்கும் வணக்கம்;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.content.Intent;
import android.view.View;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
// broadcast a custom intent.
public void broadcastIntent(View view)
{
Intent intent = new Intent(); intent.
setAction(“com.tutorialspoint.CUSTOM_INTENT”);
sendBroadcast(intent);
}
}
பின்வருவது src/com.example.அனைவருக்கும் வணக்கம்/MyReceiver.javaஎன்பதன் உள்ளடக்கமாகும்
package com.example.helloworld;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, “Intent Detected.”,
Toast.LENGTH_LONG).show();
}
}
பின்வருவது AndroidManifest.xmlஎனும் கோப்பின் உள்ளடக்கங்கள் மாறுதல்கள் செய்யப்பட்டதாகும் இங்கு நாம் நம்முடைய சேவையில் உள்ளடங்கிஇருப்பதற்கு எனும் குறிச்சொல்லை சேர்த்துள்ளோம்

பின்வருவது நம்முடைய வாடிக்கையாளர் நோக்கம் ஒலிபரப்புவதற்கு ஒரு பொத்தான் உள்ளடக்கமாக செய்வதற்கு res/layout/activity_main.xmஎனும் கோப்பின் உள்ளடக்கமாகும்

பின்வருவதுஇரு புதிய மாறிலியை வரையறுப்பதற்கு res/values/strings.xml என்பதன் உள்ளடக்கமாகும்

அனைவருக்கும் வணக்கம்
அனைவருக்கும் வணக்கம்!
Settings
MainActivity
Broadcast Intent

நாம் சற்றுமுன்பு நம்மால் நம்முடைய மாறுதல்கள் செய்யப்பட்ட “அனைருக்கும் வணக்கம்” எனும் பயன்பாட்டினை இயக்க முயற்சி செய்வோம்.அதற்காக முதலில் சூழல் அமைவை அமைவு செய்திடும்போது நம்முடைய AVD ஐ உருவாக்கிவிட்டோம் என கருதிகொள்க இந்தஎக்லிப்ஸில் இருந்து பயன்பாட்டை இயக்குவதற்கு நம்முடைய செயல்திட்டத்தின் செயல்பாட்டு கோப்புகளில் ஒன்றினை திறந்து கொள்க அதனை தொடர்ந்து கருவிகளின் பட்டையிலிருந்து Runஎனும் உருவப் பொத்தானை தெரிவு செய்து சொடுக்குக உடன் எக்லிப்ஸானது நம்முடைய AVD இல் நம்முடைய பயன்பாட்டை நிறுவுகை செய்திடத் துவங்கிடும் அதனை தொடர்ந்து நம்முடைய கட்டமைப்பு, பயன்பாடு ஆகிய அனைத்தும் நன்றாக உள்ளன என்றால், அது பின்வரும் முன்மாதிரி சாளரத்தினை திரையில் காண்பிக்கும்:
2.3
நம்முடையவிருப்ப நோக்கம் ஒளிபரப்புசெய்வதற்கு இப்போது Broadcast Intentஎனும் பொத்தானை சொடுக்குதல் செய்க இது நம்முடைய விருப்ப நோக்கமான “com.tutorialspoint.CUSTOM_INTENT” என்பதை ஒளிபரப்பு செய்கின்றது இது நம்முடைய BroadcastReceiver எனும் பதிவை இடைமறித்திடுகின்றது. MyReceiver உம் நம்முடைய செயல்படுத்தப்படும் தருக்கமும் ஒன்றுக்கு ஒரு toast முன்மாதிரி பின்வருமாறு திரையில் தோன்றிடும்:
2.4

நாம் கணினியின் செயலை இடைமறிக்க மற்ற BroadcastReceiver செயல்படுத்தி உருவாக்கப்படும் கணினியை துவக்குதல், தேதியைமாற்றுதல் மின்கலனில் குறைந்த மின்சாரம் இருப்பதை சுட்டிகாட்டுதல் போன்ற நாம் விரும்பிய அறிவிப்புகளை செய்திடுமாறுமுயற்சி செய்யலாம்

Advertisements

மறுமொழியொன்றை இடுங்கள்

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / மாற்று )

Twitter picture

You are commenting using your Twitter account. Log Out / மாற்று )

Facebook photo

You are commenting using your Facebook account. Log Out / மாற்று )

Google+ photo

You are commenting using your Google+ account. Log Out / மாற்று )

Connecting to %s

%d bloggers like this: