- Home /
Executing C# Code on BOOT_COMPLETED
Hi all,
I'm building an Android plugin for Unity. I make an BroadcastReceiver
that handles android.intent.action.BOOT_COMPLETED
and want to execute some logic on intent received. Take a look at the code below.
public class SomeBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Some logic here
}
}
My goal is I want to execute code that's written in C# so that I have some flexibility from the C# land on how to handle that intent. I know that I might be able to achieve this using AndroidJavaProxy
.
// In Java land
public class SomeBroadcastReceiver extends BroadcastReceiver {
public interface IntentListener {
public void onHandleIntent(String data);
}
private static IntentListener myListener;
public static void setListener(IntentListener listener) {
myListener = listener;
}
@Override
public void onReceive(Context context, Intent intent) {
myListener.onHandleIntent(intent.getStringExtra("data"));
}
}
// In C# land
class IntentCallback : AndroidJavaProxy {
public IntentCallback() : base("com.my.package.SomeBroadcastReceiver$IntentListener") { }
public void onHandleIntent(string data) {
// Custom logic from C# land here.
}
}
The problem is... I don't know when/where to attach this listener. My first intuition is to attach the listener on OnGUI
call. But this is incorrect since it's possible for the receiver to accept the intent even before we open the application.
Side note: I don't want to use UnityPlayer.UnitySendMessage
since this will require hard configuration from the C# land (e.g.: to use this plugin, you'll need to make an object called PluginObject
).
Any help is appreciated!
Answer by steakpinball · Apr 24, 2015 at 06:54 PM
You can't use an AndroidJavaProxy
until after Unity starts. I recommend performing any behavior in Java and saving data in a place where C# can load when Unity does launch.
Your answer
Follow this Question
Related Questions
dll is not allowed to be included or could not be found" error unity3d for android 8 Answers
Read intent from Android Studio in Unity 0 Answers
how to send text from html page to unity android app? 0 Answers
[Android+Eclipse]Get album image from mp3 file 0 Answers
APK size 70 mb more then editor log 0 Answers