2023/11/8

Android : start Activity from another package

就是要叫起另一個 package 中的activity.

Example:
裡面就是兩個 application: Target Application, Launch Target.
Launch Target 這個 app 會把 Target Application 叫起來。

clone 下來,分別用Android Studio 開啟兩個project,都 build OK,and install 後,
啟動 Launch Target,去按中間的 "Launch Target" 字樣,就會啟動 Target Application.

原來有人說用 getLaunchIntentForPackage( ) 取得 launchIntent,結果我都return null
所以有人說 android 11 後,要加上 query tag 的 applicatin 才能被取到。

所以最後只有這種方法可以用:
      Intent launchIntent = new Intent(Intent.ACTION_MAIN);
      launchIntent.setComponent(new ComponentName("com.example.targetapplication","com.example.targetapplication.MainActivity"));
      startActivity(launchIntent);

沒有留言:

張貼留言