2011-04-20 20 views
0

比方說,我創建一個意圖查看谷歌地圖,像這樣:Android-定製內置組件?

Intent intent = new Intent("android.intent.ACTION_VIEW"); 
intent.setComponent(ComponentName.unflattenFromString("com.google.android.apps.maps/com.google.android.maps.MapsActivity")); 
intent.addCategory(android.intent.category.LAUNCHER); 
intent.setData("Your Google My Map URL HERE"); 
startActivity(intent); 

有什麼辦法可以自定義這個MapsActivity組件,或者只是得到一個手柄,它可以控制/查詢它所有,或將我必須從頭開始做這件事?

回答

1

是否有任何方法來定製這個MapsActivity組件,或者只是獲得一個句柄來控制/查詢它,或者我必須從頭開始做這件事?

不可以。您無權破解其他應用程序,不僅僅是他們有權侵入您的應用程序。使用MapView

順便說一句,你的示例代碼有可怕的。切勿以組件名稱引用第三方應用程序,因爲如果該應用程序重構其代碼,您的代碼將中斷。千萬不要將LAUNCHER類別添加到Intent,除非您實際上是啓動器(例如主屏幕)。請記住,這個配方既沒有記錄也沒有得到Google的支持。

+0

好吧,我想不是,我只是不確定什麼是「組件」,或者我可以用它做什麼。我從這個問題的答案中得到了這個示例代碼,呵呵。 – 2011-04-20 15:01:06

+1

@Rob Lourens:在Android-ese中,「組件」是一個活動,服務,內容提供者或廣播接收者 - 基本上,您在清單中看到子節點「」的主要內容。另外,對於我的答案中的粗俗語氣感到抱歉。 – CommonsWare 2011-04-20 15:15:50