我目前正在開發這需要一些ADB命令通過不同的過程的非活性類的Android:通知應用
首先我在應用模塊1一個單獨的模塊的應用程序,並且有com.mordred.xyz.Main類在那裏
public class Main {
public static void main(String[] args) {
System.out.println("mordred main class is instantiated");
// rest of code
}
}
我實例通過ADB(adb shell dalvikvm -cp com.mordred.MyApplication com.mordred.xyz.Main
)
是主類(com.mordred.xyz.Main),我在我的應用程序有一個MainActivity(com.mordred.MyApplication.MainActivity )
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// MainActivity rest of code
}
}
所以問題是我如何通知application.MainActivity,即使應用程序已關閉「主類是通過adb實例化」?
我試圖Context.sendIntent但它需要上下文對象的,也是我無法從MainActivity還是其他物體傳遞上下文對象(因爲我想主要的類可以被實例化,即使應用程序沒有運行)
我不要使用隱藏的API(IActivityManager具有broadcastIntent方法,但這個類是隱藏的系統API)
我能爲它做些什麼?
UPDATE:
靈光,也許我找到了一種方法,
我將在主類中的硬編碼路徑,並在那裏創建一個虛擬文件,然後會給出一個可讀寫的權限給大家通過File.setReadable(),然後當Main類被實例化時,它會在該文件中寫入類似「Main:1」的內容,然後我將在應用程序的MainActivity類中添加一個檢查,該類將檢查該文件是否爲「Main:1 「與否,(」主:1" 的意思是主類被實例化,否則‘主:0’表示反之亦然)