// // Copyright (c) 2014 VK.com // // Permission is hereby granted, free of charge, to any person obtaining a copy of // this software and associated documentation files (the "Software"), to deal in // the Software without restriction, including without limitation the rights to // use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of // the Software, and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // // The above copyright notice and this permission notice shall be included in all // copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS // FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR // COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER // IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // package com.vk.sdk; import android.app.Activity; import android.content.Context; import android.content.Intent; /** * Class for VK authorization and dialogs helping */ public class VKUIHelper { private static Activity sTopActivity; private static Context sApplicationContext; public static Activity getTopActivity() { return sTopActivity; } public static Context getApplicationContext() { return sApplicationContext; } /** * Call it in onCreate for of activities where you using VK SDK * @param activity Your activity */ public static void onCreate(Activity activity) { if (sTopActivity != activity) sTopActivity = activity; if (sApplicationContext == null && activity != null) { sApplicationContext = activity.getApplicationContext(); } } /** * Call it in onResume for of activities where you using VK SDK * @param activity Your activity */ public static void onResume(Activity activity) { if (sTopActivity != activity) sTopActivity = activity; if (sApplicationContext == null && activity != null) { sApplicationContext = activity.getApplicationContext(); } } /** * Call it in onDestroy for of activities where you using VK SDK * @param activity Your activity */ public static void onDestroy(Activity activity) { if (sTopActivity == activity) sTopActivity = null; } /** * Call it in onActivityResult of all activities where you using VK SDK * @param requestCode Request code for startActivityForResult * @param resultCode Result code of finished activity * @param data Result data * @deprecated Use onActivityResult(Activity activity, int requestCode, int resultCode, Intent data) instead */ public static void onActivityResult(int requestCode, int resultCode, Intent data) { onActivityResult(sTopActivity, requestCode, resultCode, data); } /** * Call it in onActivityResult of all activities where you using VK SDK * @param requestCode Request code for startActivityForResult * @param resultCode Result code of finished activity * @param data Result data */ public static void onActivityResult(Activity activity, int requestCode, int resultCode, Intent data) { sTopActivity = activity; if (requestCode == VKSdk.VK_SDK_REQUEST_CODE) { VKSdk.processActivityResult(requestCode, resultCode, data); } } }