您好,登錄后才能下訂單哦!
這篇文章主要介紹componentname怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
ComponentName,顧名思義,就是組件名稱,通過調用Intent中的setComponent方法,我們可以打開另外一個應用中的Activity或者服務。
如何實例化一個ComponentName
實例化一個ComponentName需要兩個參數,第一個參數是要啟動應用的包名稱,這個包名稱是指清單文件中列出的應用的包名稱:
第二個參數是你要啟動的Activity或者Service的全稱(包名+類名),代碼如下:
啟動一個Activity:
Intentintent=newIntent();
intent.setComponent(newComponentName("com.example.otherapp",
"com.example.otherapp.MainActivity2"));
startActivity(intent);
ComponentName使用
ComponentName:可以啟動其他應用的Activity、Service.
ComponentNamechatActivity=newComponentName(param1,param2);
param1:Activity、Service所在應用的包名
param2:Activity、Service的包名+類名
Activity:
ComponentNamechatActivity=newComponentName("com.npf.chat","com.npf.chat.ui.ChatActivity");
Intentintent=newIntent();
intent.setComponent(chatActivity);
startActivity(intent);
Service:
ComponentNamechatService=newComponentName("com.npf.chat","com.npf.chat.ui.ChatService");
Intentintent=newIntent();
intent.setComponent(chatService);
startService(intent);
注:
如果該Activity非應用入口(入口Activity默認android:exported="true"),則需要再清單文件中添加android:exported="true"。Service也需要添加android:exported="true"。允許外部應用調用。
以上是“componentname怎么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。