[英]How to send intent data from main project to library project in android?
[英]intent from library project to main project
當我嘗試使用意圖從主項目傳遞到庫項目時, 它工作正常,但是.....當我嘗試從庫項目傳遞到主項目時,它無法識別主項目中的類 。
我試圖在我的圖書館項目中寫出這個意圖:
Intent intent = new Intent(this,com.example.uploadvideo.class);
startActivity(intent);
我將要連接的兩個活動添加到主項目和庫項目的清單中。
圖書館項目不了解主要項目。 imo的首選解決方案是使用操作,而不是嘗試直接在意圖中加載類。 如果要重用該庫,這也將為您提供更大的靈活性。
所以圖書館會做
Intent intent = new Intent("com.example.action_video_upload");
intent.setPackage(mContext.getPackageName()); // only deliver to host app
並且主項目將在清單中注冊該意圖,
<intent-filter . . . >
<action android:name="com.example.action_video_upload" />
</intent-filter>
可以在這里找到更多信息: developer.android.com
庫項目包含可共享的Android源代碼和資源,您可以在Android項目中引用這些資源。 當您具有要重用的通用代碼時,這很有用。 庫項目無法安裝到設備上,但是會在構建時將它們拉到.apk文件中。
換句話說,圖書館項目將受到侵犯。
從庫中調用主項目的意圖才有意義。
實際上,您使庫項目效率低下,無法處理當前主項目以外的項目。
以以下方式開始下一個活動:
Intent intent = new Intent(this,com.example.UploadVideo.class);
startActivity(intent);
因為當前您在第二個參數中向Intent構造函數傳遞了錯誤的活動名稱
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.