Android電話播號與簡訊發送實現代碼

來源:互聯網
上載者:User

Android應用程式架構

src/ java原代碼存放目錄
gen/ 自動組建目錄
gen 目錄中存放所有由Android開發工具自動產生的檔案。目錄中最重要的就是R.java檔案。這個檔案由Android開發工具自動產生的。Android開發工具會自動根據你放入res目錄的xml介面檔案、表徵圖與常量,同步更新修改 R.java檔案。正因為R.java檔案是由開發工具自動產生的,所以我們應避免手工修改R.java。R.java在應用中起到了字典的作用,它包含了介面、表徵圖、常量等各種資源的id,通過R.java,應用可以很方便地找到對應資源。另外編繹器也會檢查R.java列表中的資源是否被使用到,沒有被使用到的資源不會編繹進軟體中,這樣可以減少應用在手機佔用的空間。
res/ 資源(Resource)目錄
存放應用使用到的各種資源,如xml介面檔案,圖片或資料。
AndroidManifest.xml 功能資訊清單檔
列出了應用程式所提供的功能,在這個檔案中,你可以指定應用程式使用到的服務(如電話語音、互連網服務、簡訊服務、GPS服務等等)。
當新添加一個Activity的時候,也需要在這個檔案中進行相應配置,只有配置好後,才能調用此Activity。
default.properties 項目環境資訊,一般是不需要修改此檔案


Intent:當找到與設定的Intent限制相同的Activity時候通過startActivity()就會啟動該Activity

電話播號器:

)AndroidManifest.xml中添加電話語音許可權:

 代碼如下 複製代碼
<uses-permission android:name="android.permission.CALL_PHONE"/>

2)介面布局

 代碼如下 複製代碼
LinearLayout (線性布局)、AbsoluteLayout(絕對布局)、RelativeLayout(相對布局)、TableLayout(表格版面配置)、FrameLayout(幀布局)

3)Activity:
為按鈕增加單擊事件,在這個事件中添加處理事件的代碼
在Android開發中,為了效率的考慮我們使用內部類會很多,這裡就是經常會出現的一個地方.
為按鈕添加單擊事件,並在事件中處理常式.

 代碼如下 複製代碼


intent.setAction("android.intent.action.CALL");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse("tel:" + strmobile));
startActivity(intent);//方法內部會自動為Intent添加類別:android.intent.category.DEFAULT


button.setOnClickListener(new View.OnClickListener(){
    public void onClick(View v) {
            EditText editText = (EditText)findViewById(R.id.mobile);
            Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"+ editText.getText()));
            DialerAction.this.startActivity(intent);
    }


簡訊發送器:

 代碼如下 複製代碼

SmsManager manager = SmsManager.getDefault();
ArrayList<String> texts = manager.divideMessage(comtent);
for (String text : texts) {
manager.sendTextMessage(number, null, text, null, null);// 4和5參數分別為簡訊發送狀態,對方是否收到簡訊狀態;
}
Toast.makeText(getApplicationContext(),R.string.success,Toast.LENGTH_LONG).show();
吐西對話方塊// Toast.makeText(MainActivity.this, resId, duration);//內部類訪問外部類;

****************************************************************

findViewById(R.id.button);// 根據id尋找顯示控制項;
View.OnClickListener() {
@Override
public void onClick(View arg0) {
//arg0 就是被點擊的對象
}
}

@+id/button:在R檔案的id內部類裡面,添加一個id為button的常量,使用該常量的值作為此控制項的id值;
@android:表示訪問android包下的R檔案;
@id/label:表示訪問id為label的檔案;(相對布局)

單元測試:

繼承類:AndroidTestCase

 代碼如下 複製代碼

<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.hellokity" />

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name="android.test.runner" />
</application>

actual = function();
Assert.assertEquals(3,actual);判斷actual是否為3;

結:
--使用系統服務的時候不要忘記在AndroidManifest.xml中添加服務許可權
--簡訊服務在這裡,使用了SmsManager類,來操作.
--傳送簡訊時要判斷是否大於70個字
--Toast使用的時候,不要忘記show().要不然不會顯示.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.