|
ئەسسالامۇ ئەلەيكۇم !
MainActivity.java كودى
- package com.example.homedemo;
- import android.os.Bundle;
- import android.app.Activity;
- import android.content.Intent;
- import android.view.Menu;
- public class MainActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- Intent intent = new Intent(this,HomeService.class);
- startService(intent);
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.main, menu);
- return true;
- }
- }
مەزمۇننى كۆچۈرۈۋېلىش
ئەپنى ئىجرا قىلغان ھامانلا Intent ئارقىلىق HomeService.java قوغلىدۇ يەنى بۇ يېرى شۇ
- Intent intent = new Intent(this,HomeService.class);
- startService(intent);
مەزمۇننى كۆچۈرۈۋېلىش
HomeService.java بولسا ئارقا سەپ مۇلازىمىتى بۇ ئارقا سەپتە پىروگراممىنىڭ بۇيرۇقنى كۈتۈپ تۇرىدۇ
HomeService.java كودى
- package com.example.homedemo;
- import android.app.Service;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.content.IntentFilter;
- import android.content.SharedPreferences.Editor;
- import android.os.IBinder;
- import android.widget.Toast;
- public class HomeService extends Service{
- private HomeReceiver homeReceiver;
- private Intent newActivity;
- @Override
- public IBinder onBind(Intent intent) {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public void onCreate() {
- super.onCreate();
- homeReceiver = new HomeReceiver();
- IntentFilter homeFilter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
- registerReceiver(homeReceiver, homeFilter);
- }
-
- public class HomeReceiver extends BroadcastReceiver{
- final String SYSTEM_DIALOG_REASON_KEY = "reason";
- final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey";
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
- if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {
- String reason = intent.getStringExtra(SYSTEM_DIALOG_REASON_KEY);
- if (reason != null && reason.equals(SYSTEM_DIALOG_REASON_HOME_KEY)) {
- Toast.makeText(getApplicationContext(), "Yanfunnig HOME Konupkisi Besildi", 0).show();
- return;
- }
- }
- }
- }
-
-
- @Override
- public void onDestroy() {
- unregisterReceiver(homeReceiver);
- homeReceiver = null;
- super.onDestroy();
- }
-
- }
مەزمۇننى كۆچۈرۈۋېلىش
ئاندىن يانفۇننىڭ HOME كونۇپكىسىنى باسقان ھامانلا
- public class HomeReceiver extends BroadcastReceiver{
- final String SYSTEM_DIALOG_REASON_KEY = "reason";
- final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey";
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
- if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {
- String reason = intent.getStringExtra(SYSTEM_DIALOG_REASON_KEY);
- if (reason != null && reason.equals(SYSTEM_DIALOG_REASON_HOME_KEY)) {
- Toast.makeText(getApplicationContext(), "Yanfunnig HOME Konupkisi Besildi", 0).show();
- return;
- }
- }
- }
- }
مەزمۇننى كۆچۈرۈۋېلىش
بۇ كود لار ئىجرا بولۇپ Toast ئارقىلىق بۇ ئۇچۇر چىقىدۇ يەنى بۇ كود شۇ
- Toast.makeText(getApplicationContext(), "Yanfunnig HOME Konupkisi Besildi", 0).show();
مەزمۇننى كۆچۈرۈۋېلىش
AndroidMainfest.xml كودى
-
- package="com.example.homedemo"
- android:versionCode="1"
- android:versionName="1.0" >
-
- android:minSdkVersion="8"
- android:targetSdkVersion="18" />
-
- android:allowBackup="true"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
-
- android:name="com.example.homedemo.MainActivity"
- android:label="@string/app_name" >
-
-
-
-
-
-
-
مەزمۇننى كۆچۈرۈۋېلىش
بۇ يەردىكى مۇھىم يېرى HomeService.java نى ئۇنۇتماي تىزىملىتىۋېتىش كېرەك
بۇ service نى ئادەتتىكى كۆزنەك نى تىزىملاتقانغا ئوخشاش تىزىملىتىپ قويساق بولمايدۇ چۈنكى بۇ كۆزنەك ئەمەس بۇ ئارقا سەپتىلا ئىجرا بولىدۇ شۇڭا تىزىملىتىش ئۇسۇلىمۇ ئازراق ئوخشىمايدۇ يەنى مۇنداق :
مۇشۇ AndroidMainfest.xml غا ئۆزىمىز يېڭىدىن قۇرغان class نى تىزىملىتىۋېتىشىمىز كېرەك
كۆپىنچە ئەھۋاللاردا مۇشۇ ئىش ئۇنتۇلۇپ قېلىنىدۇ
كۆرۈنمە يۈز كودى
main.xml كودى
-
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingBottom="@dimen/activity_vertical_margin"
- android:paddingLeft="@dimen/activity_horizontal_margin"
- android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin"
- tools:context=".MainActivity" >
-
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/hello_world" />
مەزمۇننى كۆچۈرۈۋېلىش
پۈتۈن ئەسلى كود
HomeDemo.zip
(632.73 KB, چۈشۈرۈش سانى: 84)
|
باھالاش
-
باھا خاتىرىسى
|