編輯:關於Android編程
ComponentName comp=new ComponentName(ComponentAttr.this,SecondaryActivity.class);(2)創建一個Intent對象,並為該對象設置Component屬性
Intent intent=new Intent(); intent.setComponent(comp);注意:通過使用Intent不同的構造函數,(1)、(2)步驟可以合並為: Intent intent=new Intent(ComponentAttr.this,SecondaryActivity.class); (3)啟動一個類名為SecondaryActivity的Activity組件
startActivity(intent); 或者 startActivityForResult(intent,requestCode); //關閉啟動的Activity會返回結果(4)實現被啟動的組件SecondaryActivity類(繼承於Activity) (5)在AndroidManifest.xml添加一個元素,但是無需配置
public final String CUSTOME_ACTION=intent.action.CUSTOME_JIANG;//字符串可以任意 Intent intent=new Intent(); //創建一個Intent對象 intent.setAction(ActionAttr.CUSTOME_ACTION); //注意:ActionAttr為我們創建的類 startActivity(intent); //啟動一個Activity(2)與其他應用程序通信-使用系統預定action常量
Intent intent=new Intent(); intent.setAction(Intent.ACTION_CALL); //其中ACTION_CALL為Intent類的靜態成員變量,可以類直接調用 startActivity(intent);2.使用Action、Category屬性開發基本思路 (1)應用內部組件通信-自定義字符串 方式
public final String CUSTOME_ACTION=intent.action.CUSTOME_JIANG;//字符串可以任意 public final String CUSTOME_CATEGORY=intent.action.CUSTOME_CATEGORY;//字符串可以任意 Intent intent=new Intent(); //創建一個Intent對象 intent.setAction(ActionAttr.CUSTOME_ACTION); //注意:ActionAttr為我們創建的類 intent.addCategory(ActionAttr.CUSTOME_CATEGORY); startActivity(intent); //啟動一個Activity(2)使用系統預定action、category常量-以下代碼實現當點擊某個按鈕時,通過Intent對象實現返回HOME桌面。
Intent intent=new Intent(); intent.setAction(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME);//返回Home桌面 startActivity(intent); //啟動一個Activity 注意:這裡無需設置AndroidManifest.xml如果是實現應用內部組件的通信,除了上述(1)(2)步驟,我們還需要完成步: (3)實現需要啟動的Activity,如SecondaryActivity.java,ThirdActivity.java,使其繼承於Activity; (4)在工程AndroidManifest.xml添加元素,並添加
package com.example.android_intent_2;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class ActionCateAttr extends Activity {
//自定義一個action常量org.crazyit.
public final static String CRAZYIT_ACTION=intent.action.JIANG_ACTION;
public final static String CRAZYIT_CATEGORY=intent.action.JIANG_CATEGORY;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.first);
Button btn=(Button)findViewById(R.id.button);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
//創建一個Intent對象
Intent intent=new Intent();
intent.setAction(ActionCateAttr.CRAZYIT_ACTION); //設置action屬性
intent.addCategory(ActionCateAttr.CRAZYIT_CATEGORY); //設置category屬性
startActivity(intent);
}});//為btn注冊一個事件監聽器對象
/*返回桌面按鈕*/
Button btn1=(Button)findViewById(R.id.home);
btn1.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
//創建一個Intent對象
Intent intent=new Intent();
intent.setAction(Intent.ACTION_MAIN); //設置action屬性
intent.addCategory(Intent.CATEGORY_HOME);//設置category屬性
startActivity(intent);
}});//為btn注冊一個事件監聽器對象
}
}
(2).AndroidManifest.xml
(3)在工程中,添加SecondaryActivity.java,ThirdActivity.java繼承於Activity.


Intent intent=new Intent(); //創建一個Intent對象 String data=content://com.android.contacts/contacts/1; Uri uri=Uri.parse(data); //將字符串轉換為Uri intent.setAction(Intent.ACTION_VIEW); //設置Intent對象Action屬性 intent.setData(uri); //設置Intent對象Data屬性 startActivity(intent); 或者 Intent intent=new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setData(Uri.parse(content://com.android.contacts/contacts/1)); startActivity(intent);(2)在AndroidManifest.xml中添加相應的權限
在Android中讀取電話信息時,要注意加入(3)源代碼 該應用程序實現三個按鈕實現三個功能:打開網頁、編輯聯系人、撥打電話 firstActivity.java在android中使用BroadcastReceiver時 在android中使用有關的文件下載功能時,要使用到的
package com.android.android_intent_4;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*第一個按鍵功能:打開網頁*/
Button btn1=(Button)findViewById(R.id.button1);
btn1.setOnClickListener(new OnClickListener(){ //為按鈕1注冊一個事件監聽器對象
@Override
public void onClick(View v) {
//1.創建Intent
Intent intent=new Intent();
//2.設置action、data屬性
String data=http://www.baidu.com;
Uri uri=Uri.parse(data); //將字符串轉化為Uri-通用資源標識
intent.setAction(Intent.ACTION_VIEW); //設置intent屬性為系統預定義的Intent.ACTION_VIEW
intent.setData(uri); //為intent設置數據屬性,用於傳遞數據
//3.啟動Activity
startActivity(intent);
}});
/*第二個按鍵功能:編輯標識為1的聯系人*/
Button btn2=(Button)findViewById(R.id.button2);
btn2.setOnClickListener(new OnClickListener(){ //為按鈕1注冊一個事件監聽器對象
@Override
public void onClick(View v) {
//1.創建Intent
Intent intent=new Intent();
//2.設置action、data屬性
intent.setAction(Intent.ACTION_EDIT); //設置intent屬性為系統預定義的Intent.ACTION_VIEW
intent.setData(Uri.parse(content://com.android.contacts/contacts/1)); //為intent設置數據屬性,根據指定的字符解析出Uri對象
//3.啟動Activity
startActivity(intent);
}});
/*第三個按鍵功能:撥打電話18819465188*/
Button btn3=(Button)findViewById(R.id.button3);
btn3.setOnClickListener(new OnClickListener(){ //為按鈕1注冊一個事件監聽器對象
@Override
public void onClick(View v) {
//1.創建Intent
Intent intent=new Intent();
//2.設置action、data屬性
intent.setAction(Intent.ACTION_DIAL); //設置intent屬性為系統預定義的Intent.ACTION_VIEW
intent.setData(Uri.parse(tel:18819465188)); //根據指定的字符解析出Uri對象
//3.啟動Activity
startActivity(intent);
}});
}
}
效果如下圖: 
情況二、啟動應用內部組件 (1)實現一個Intent對象,並啟動組件
Intent intent=new Intent(); //創建一個Intent對象 String data=lee://www.fkjava.org:8888/mypath; Uri uri=Uri.parse(data); //將字符串轉換為Uri intent.setAction(Intent.ACTION_VIEW); intent.setData(uri); //設置Intent對象Data屬性 startActivity(intent); 或者 Intent intent=new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setData(Uri.parse(lee://www.fkjava.org:8888/mypath)); startActivity(intent);(2)在AndroidManifest.xml中設置
(3)實現其他Activity
android studio 下如何配置JNI環境
版本:Android stuido 2.2 windows 10操作系統網上很多都是基於早期的eclipse環境配置的,studio的很少。以下是我親測可用的一個詳細過程
Android分析破解-秒脫360加固大法
Android相比iOS,安全問題往往比較突出,各種漏洞和破解層出不窮。對破解方法的了解,能在開發中進行預防,加強應用的安全性。本系列文章會對Android應用的破解和保
事件處理機制之AnsyncTask異步任務
(一)概述本節給大家帶來的是Android給我們提供的一個輕量級的用於處理異步任務的類:AsyncTask,我們一般是 繼承AsyncTask,然後在類中實現異步操作,然
Android圖片加載框架 Universal-Image-Loader 妙用
Android開源框架Universal-Image-Loader就像圖片加載守護者,為我們提供了豐富的功能特性:(1)多線程加載圖像(異步或同步);(2)高度可定制化i