編輯:關於Android編程
Service正如其名服務,我們之前了解過Activity表示的是一個頁面,但是如果我們某些操作,不需要展示頁面,值需要進行後台的一個操作,這時候我們可以創建一個Service,一般進行socket通信、http請求等操作。
1、我們創建一個Android的工程
2、增加一個Service,代碼如下
package com.example.learnservice;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
public class MyService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
new Thread() {
@Override
public void run() {
super.run();
//while (true) {
System.out.println("後台運行...");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
//}
}
}.start();
return super.onStartCommand(intent, flags, startId);
}
}
繼承Service並且重寫onStartCommand,此方法在啟用此Service的時候執行。
3、我們在空的activity頁面增加2個按鈕,分別為啟動和停止Service的操作,代碼如下
package com.example.learnservice;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
public class MainActivity extends Activity {
private Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
intent = new Intent(MainActivity.this, MyService.class);
findViewById(R.id.button1).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
startService(intent);
}
});
findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("關閉後台服務....");
stopService(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;
}
}
通過startService和stopService操作。
4、我們看下Android的後台運行進程,如圖
5、我們先點擊啟動Service按鈕,再查看後台進程
看到了嗎,這個是我啟動的Service,它在後台被啟動起來啦 。
6、我們調用stopService方法停止Service,如圖
BlueStacks安卓模擬器軟件卸載,有時我們在那個BlueStacks安卓模擬器上安裝了軟件,想卸載的時候就會比較麻煩,點進去那點進去這,現在我教大家一
Android結合版最近幾個版本在包大小配額上超標了,先後采用了包括圖片壓縮,功能H5,無用代碼移除等手段減包,還是有著很大的減包壓力。組內希望我能從代碼的角度減少一些包
先給大家展示下效果圖:這個效果是安卓5.0推出 “材料設計” Ui效果 以前一直沒留意到,寫篇文章當成備忘錄上面的效果圖 用 DrawerLayout和Toolbar實現
本文實例講述了Android編程實現的重力感應效果。分享給大家供大家參考,具體如下:android中的很多游戲的游戲都使用了重力感應的技術,就研究了一下重力感應以屏幕的左