2015-05-17 48 views
2

任何人都知道如何在Unity中按下按鈕時在後臺啓動應用程序(使用C#)?我到處尋找,但我只能找到Process.Start()方法來執行外部應用程序。不幸的是,它把重點轉移到了它,這是我不想要的。在Unity中在後臺啓動應用程序

在此先感謝!

+0

嘿,我知道你選擇了我的答案,但我有一個問題。你的意思是你想讓Unity繼續在後臺運行,即使遊戲/編輯器/應用程序沒有關注,或者你想在後臺啓動另一個應用程序?我很困惑,我想確保我的答案是你想要的。 – Programmer

+0

@Programmer,我真的不確定當時想做什麼。這是一個相當古老的帖子,但如果我選擇了你的答案,那麼這意味着它對我有用 – ChaosEmperor93

+0

好的。沒關係。 – Programmer

回答

2

您使用

Application.runInBackground = true; 

,使您的應用程序在後臺運行。將其設置爲false以使其不在後臺運行。

Application.runInBackground = false; 
+0

這使得Unity在後臺運行,而不是輔助進程,這似乎是OP所要求的。 – Junuxx

+0

@Junuxx剛纔看到了這個。他從未說過任何關於二次過程的事情我想這是他想要的,因爲它爲他工作。 – Programmer

+0

他確實做到了。他說他想從Unity *開始在後臺啓動應用程序*。他還說他嘗試了'Process.Start()',它用於啓動外部進程。這不是什麼沒有工作。他要求的幫助是這個外部過程在前臺發起。所以,任一個OP都設法難以置信地說出他的問題,或者他接受了一個答案,根本沒有解決他的問題。 – Junuxx

0

如果您在Unity App中按下按鈕,您將失去當前應用程序的焦點。

但是, 1)您可以使用PackageManager API執行其他Android應用程序。 (統一可撥打採用AndroidJavaClass Android的API)

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address"); 
startActivity(launchIntent); 

2)一旦被執行,就可以當前任務堆棧的應用程序中重新排序。

Intent i = new Intent(this, MyMainActivity.class); 
i.setAction(Intent.ACTION_MAIN); 
i.addCategory(Intent.CATEGORY_LAUNCHER); 
startActivity(i); 

所以,我認爲你可以嘗試一些技巧。
A可以執行B,然後B立即將其焦點返回給A(有些閃爍)
或者A執行B,然後A可以在背景中從B取回其對焦。

+0

爲什麼你認爲這是關於Android上的Unity? – Junuxx

+0

你說得對。我錯過了。我只是爲了這個情況而放棄它。 –

相關問題