Back to project page Grocery-Mate.
The source code is released under:
Apache License
If you think the Android project Grocery-Mate listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
/* * Copyright (C) 2011 iMellon//from ww w. ja v a2 s .c om * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ package com.imellon.android.grocerymate; import java.lang.ref.WeakReference; import java.util.ArrayList; import android.app.Application; import android.util.Log; /** * @author Christos Papazafeiropoulos, Dimitris Makris */ public class GroceryMateApp extends Application { private static final String TAG = GroceryMateApp.class.getSimpleName(); public static final String APP_SHARED_PREFS = "com.imellon.android.apps.isupermarket.settings"; public static interface OnLowMemoryListener { public void onLowMemory(); } private static GroceryMateApp instance; private ArrayList<WeakReference<OnLowMemoryListener>> mLowMemoryListeners; public String sessionId = null; @Override public final void onCreate() { super.onCreate(); instance = this; mLowMemoryListeners = new ArrayList<WeakReference<OnLowMemoryListener>>(); } @Override public void onTerminate() { super.onTerminate(); } @Override public void onLowMemory() { super.onLowMemory(); Log.e(TAG, "onLowMemory"); int i = 0; while (i < mLowMemoryListeners.size()) { final OnLowMemoryListener listener = mLowMemoryListeners.get(i) .get(); if (listener == null) { mLowMemoryListeners.remove(i); } else { listener.onLowMemory(); i++; } } } public static GroceryMateApp getInstance() { return instance; } public void registerOnLowMemoryListener(OnLowMemoryListener listener) { if (listener != null) { mLowMemoryListeners.add(new WeakReference<OnLowMemoryListener>( listener)); } } public void unregisterOnLowMemoryListener(OnLowMemoryListener listener) { if (listener != null) { int i = 0; while (i < mLowMemoryListeners.size()) { final OnLowMemoryListener l = mLowMemoryListeners.get(i).get(); if (l == null || l == listener) { mLowMemoryListeners.remove(i); } else { i++; } } } } }