Search Unity

JNI (Java Native Interface) Get a list of app icons

Discussion in 'Scripting' started by coen22, Aug 24, 2014.

  1. coen22

    coen22

    Joined:
    Aug 27, 2013
    Posts:
    31
    I'm working on a launcher but I need to get the icons from the Package Manager.
    It doesn't yet work but it should already do something. Does anyone know how to get it working?
    I based my code on this one: https://github.com/frankkienl/BaxyLauncherOUYA/blob/master/src/nl/frankkie/baxy/MakeImageCache.java

    Code (CSharp):
    1. AndroidJavaClassup = newAndroidJavaClass("com.unity3d.player.UnityPlayer");
    2. AndroidJavaObjectca = up.GetStatic<AndroidJavaObject>("currentActivity");
    3. AndroidJavaObjectpackageManager = ca.Call<AndroidJavaObject>("getPackageManager");
    4.  
    5. AndroidJavaObjectmainIntent = newAndroidJavaObject ("Intent", "Intent.ACTION_MAIN", null);
    6. mainIntent.Call ("addCategory", "Intent.CATEGORY_LAUNCHER");
    7. mainIntent.Call ("addCategory", "tv.ouya.intent.category.GAME");
    8. List<AndroidJavaObject> resolvedInfos = packageManager.Call<List<AndroidJavaObject>>("queryIntentActivities",mainIntent, 0);
    9.  
    10. AndroidJavaObjectresources = newAndroidJavaObject ("Resources");
    11.  
    12. foreach (AndroidJavaObjectresolvedInfoinresolvedInfos) {
    13. //TODO Fix this line
    14. //resources = packageManager.Call<AndroidJavaObject>("getResourcesForApplication", resolvedInfo);
    15.  
    16. //TODO Get the real package name
    17. //AndroidJavaObjectfileOutputStream = newAndroidJavaObject("FileOutputStream", "/sdcard/BAXY/thumbnails/" + packageName + ".png");
    18. }