我有一個項目,涉及使用Android設備通過藍牙SPP
向遠程嵌入式控制器(類似於Arduino)發送命令和接收消息。具有多種活動的Android藍牙服務
我已成功創建了一個基於YouTube上一系列tutorials的單個活動應用程序。本教程中的許多代碼取自官方的BluetoothChat示例,但它不是作爲服務完成的。
現在對於我的問題...我需要設置一個「主頁」活動,當點擊相應的按鈕時將啓動其他活動。
主頁上產生的每個活動都會有按鈕控件,通過藍牙將命令發送到嵌入式控制器以執行不同的功能。
初始藍牙連接在我的主頁活動中啓動。但是,當啓動新的活動時,我的主頁的onStop()
方法被調用,並且藍牙連接丟失。
在每個活動中都沒有複製藍牙代碼的功能,這似乎是一種服務是要走的路?我在堆棧溢出link上找到了這篇文章,這非常好,但是我對Android編程已經足夠新了,因爲缺少的細節讓我碰到了一堵磚牆。
此外,該示例並未解決使用該服務的多個活動。使用藍牙連接進行多項活動的最佳方式是什麼?
片段的想法是爲我走的路。我對碎片知之甚少,但花了大部分時間在學習,我的應用現在按我想要的方式工作。對於那些有類似情況的人,除了Android文檔,我還高度推薦了Youtube上的「Slidenerd」片段系列教程。 – john8791 2014-10-01 23:03:00
據我所知,文檔服務在有界活動停止時停止。我對嗎? 因此,如果第二個活動在第一個活動之後開始(例如,按鈕點擊),那麼您如何將第二個活動綁定到該服務? (以便在第一個活動中建立的連接不會死亡) – Sndn 2015-03-11 11:11:26
@Sndn您應該創建一個活動,就像所有其他活動一樣。你可以稱之爲AbstractActivity或者其他東西,並用它來擴展Activity,然後所有其他活動都應該執行該AbstractActivity。這就是它不會停止工作的原因。 - 編輯 - 我剛看到這個問題有多大。但是,答案可能有助於某人,誰知道。 :) – zed 2016-12-10 13:24:49