亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Android程序調(diào)用機制研究

        2019-04-29 05:51:36耿慶田高琦坤
        長春師范大學學報 2019年4期
        關鍵詞:調(diào)用應用程序啟動

        張 天,耿慶田,高琦坤

        (長春師范大學計算機科學與技術學院,吉林長春 130032)

        隨著“互聯(lián)網(wǎng)+”和大數(shù)據(jù)應用的不斷深入,移動互聯(lián)終端在各個行業(yè)中的應用越來越普及,移動終端的應用程序也越來越多,尤其一些專業(yè)領域,需要特殊定制行業(yè)移動應用。由于Android的免費特性,很多移動終端都以其作為運行平臺來開發(fā)相應的行業(yè)應用。在編制過程中,程序員經(jīng)常需要調(diào)用相關行業(yè)專用硬件信息來獲取數(shù)據(jù),而在編制應用程序過程中未必具備某些專用硬件,或者應用程序編制者不能熟悉使用這些專用硬件,而從專用硬件中得到數(shù)據(jù)才能保證應用程序的測試運行,此時可以利用Android程序的運行機制進行程序替換,以獲取和設定上層應用程序需要的特定數(shù)據(jù)進行測試。

        1 Android程序調(diào)用機制

        Android應用程序采取了MVC的設計模式,程序界面與程序運行代碼是分離的。我們每設計一個窗口程序界面,需要同時完成兩項工作:一是應用程序的界面設計;一是用戶在界面操作時的響應代碼。程序界面在項目工程中以布局文件形式存在,而界面響應代碼則以JAVA類的形式存在。在Android中將這兩項統(tǒng)一稱作Activity(活動)。在Android Studio中創(chuàng)建活動如圖1所示,從中可看出活動的組成。

        圖1 Android Studio創(chuàng)建活動

        在Android的項目中,會有一個活動作為主活動,當程序第一次運行時最先顯示給用戶,然后通過這個活動進行其它活動的調(diào)用執(zhí)行。為了使Android平臺可以自動啟動主活動,在每個項目中有一個配置文件,文件名為AndroidManifest.xml,在這個文件中定義了我們所建立的每一個活動的屬性與關聯(lián)。代碼如下:

        android:name=".MainActivity"

        android:label="@string/app_name"

        android:theme="@style/AppTheme.NoActionBar">

        Android通過intent-filter標簽中action屬性值來確定哪一個活動會作為主活動啟動,從上述代碼中可以看到,action值為“android.intent.action.MAIN”時,Android平臺將調(diào)用對應的活動作為應用程序的第一個窗口呈現(xiàn)在用戶眼前。通過使action取不同的值,可以啟動不同的活動,其中包括一些系統(tǒng)活動和用戶所設定的活動。

        在Android系統(tǒng)中,要啟動某一個活動,需要發(fā)送Intent對象給Android平臺,Android平臺通過Intent中包含的action名稱來決定啟動哪一個Activity??梢酝ㄟ^這種方式來對一些現(xiàn)有應用程序中的運行活動進行替代,向應用程序發(fā)送模擬數(shù)據(jù),對應用程序進行運行測試。

        2 基于Intent運行機制的應用

        以替代Android相機程序為例,假設程序員在編制程序過程中,需要調(diào)用相機獲取圖像之后才能繼續(xù)進行程序調(diào)試,但是每次打開相機獲取圖像時操作過于緩慢。我們可以創(chuàng)建一個測試應用項目,通過修改Intent調(diào)用機制,使應用程序每次只調(diào)用我們編寫的測試應用,而不啟動Android平臺中的相機應用,在測試應用中,可以直接為調(diào)用者提供他們所需要的已經(jīng)拍照好的圖像,這樣就可以節(jié)省大量程序調(diào)試時間,同時為程序調(diào)試提供特定數(shù)據(jù)。

        首先,明確在我們所使用的Android平臺中需要替換的應用程序的完整包名和調(diào)用此應用程序所指定的Intent的屬性值內(nèi)容。為獲取以上兩方面信息,可以借助網(wǎng)絡上的APK反編譯工具對所要替代程序的安裝包進行反編譯,本文推薦比較常用的APK反編譯工具APK Editor Pro,圖形化界面易操作。之后在反編譯好的文件夾中找到該程序的AndroidManifest.xml文件,在該文件中查找到此程序的完整包名和調(diào)用該程序所發(fā)出的intent值并記錄。

        圖2 Android對相同Intent請求調(diào)用示意圖

        然后,在建立測試應用項目時對該項目空間命名,采用剛剛查找到的包名信息進行命名,在測試項目的AndroidManifest.xml文件中對Activity進行定義時,intent-filter標簽中的action屬性值設成我們記錄的intent值。以這種方式進行設置后,如果將測試程序安裝到現(xiàn)有Android平臺后,在平臺當中就會出現(xiàn)兩個同名包的應用程序,那么當啟動該名稱的程序時,Android系統(tǒng)會調(diào)用最后安裝的應用程序,這樣就實現(xiàn)了原有啟動程序的替換。此方案詳細替換過程如圖2所示,經(jīng)過替換后,由測試程序向主程序提供調(diào)用返回數(shù)據(jù)。

        最后,可以在測試程序中按照預先設定,為主程序提供所需的測試數(shù)據(jù),在提供數(shù)據(jù)之前,也可以在測試程序中對測試數(shù)據(jù)進行加工處理,以適應主程序要求。

        3 結語

        本文中提供的方法可以用作替換現(xiàn)有第三方應用程序被自開發(fā)的程序調(diào)用,針對不便修改的第三方程序也可以調(diào)用其它活動進行替換,從而為第三方程序提供我們想提供給它的數(shù)據(jù)內(nèi)容,但在這方面應用時,需要注意相關的版權問題及相關的法律法規(guī)。

        猜你喜歡
        調(diào)用應用程序啟動
        核電項目物項調(diào)用管理的應用研究
        刪除Win10中自帶的應用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        LabWindows/CVI下基于ActiveX技術的Excel調(diào)用
        測控技術(2018年5期)2018-12-09 09:04:46
        霧霾來襲 限產(chǎn)再次啟動
        安發(fā)生物啟動2017
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術研究
        西部最大規(guī)模云計算中心啟動
        俄媒:上合組織或9月啟動擴員
        利用RFC技術實現(xiàn)SAP系統(tǒng)接口通信
        關閉應用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        欧美最猛黑人xxxx黑人表情| 五月激情在线视频观看| 色综合久久网| 亚洲日韩精品无码专区网站| 99热免费精品| 在线亚洲精品国产成人二区| 久久亚洲中文字幕精品熟| 亚洲日韩久久综合中文字幕| 无码国产激情在线观看| 无码中文字幕专区一二三| 久久成人精品国产免费网站| 一区二区和激情视频| 精品欧洲av无码一区二区三区 | 免费无码成人av在线播放不卡| 亚洲精品国产福利一二区 | 国产精品玖玖玖在线资源| 日韩精品一区二区三区免费观影| 国产免费av手机在线观看片| 疯狂撞击丝袜人妻| 老色鬼永久精品网站| 高潮av一区二区三区| 无码人妻丰满熟妇啪啪网不卡| 激情 人妻 制服 丝袜| 国产成人啪精品视频免费网| 永久中文字幕av在线免费| 少妇精品无码一区二区三区| 漂亮人妻被黑人久久精品| 亚洲天堂中文字幕君一二三四| 久久久精品亚洲一区二区国产av | 欧美成人精品三级网站| 亚洲中文字幕久久精品蜜桃| 少妇呻吟一区二区三区| 精品国品一二三产品区别在线观看| 中文天堂在线www| 国产一区二区三区观看视频| 少妇下面好爽好紧好湿一区二区| 无码吃奶揉捏奶头高潮视频| 国产精品27页| 亚洲a级视频在线播放| 成人国产精品一区二区八戒网| 国产成人av大片大片在线播放|