當前位置: 首頁>>代碼示例>>Java>>正文


Java Kroll類代碼示例

本文整理匯總了Java中org.appcelerator.kroll.annotations.Kroll的典型用法代碼示例。如果您正苦於以下問題:Java Kroll類的具體用法?Java Kroll怎麽用?Java Kroll使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


Kroll類屬於org.appcelerator.kroll.annotations包,在下文中一共展示了Kroll類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: start

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void start()
{
    setState(STATE_RUNNING);
    // App opens analytics
    ParseAnalytics.trackAppOpenedInBackground(TiApplication.getAppRootOrCurrentActivity().getIntent());
    ParseInstallation.getCurrentInstallation().put("androidId", getAndroidId());
    ParseInstallation.getCurrentInstallation().saveInBackground(new SaveCallback() {
        public void done(ParseException e) {
            if (e != null) {
                Log.e(TAG, "Installation initialization failed: " + e.getMessage());
            }
            // fire event
            try {
            	JSONObject pnData = new JSONObject();
	pnData.put("objectId", getObjectId());
	pnData.put("installationId", getCurrentInstallationId());
	KrollDict data = new KrollDict(pnData);
             module.fireEvent("installationId", data);
} catch (JSONException e1) {
	Log.e(TAG, "InstallationId event failed: " + e1.getMessage());
}
        }
    });
}
 
開發者ID:gimdongwoo,項目名稱:Titanium-Parse-Android,代碼行數:26,代碼來源:ParseModule.java

示例2: openURL

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public boolean openURL(KrollDict options) {
	if ( (options != null) && options.containsKeyAndNotNull(Params.URL)) {
		Context context = TiApplication.getAppCurrentActivity();
		List<ResolveInfo> browsersList = Utils.allBrowsers(context);
		
		if (!browsersList.isEmpty()) {
			List<String> customTabBrowsers = getCustomTabBrowsers(context, browsersList);				
			
			// show supported browsers list or open directly if only 1 supported browser is available
			openCustomTab(context, customTabBrowsers, options);
	        
			return true;
			
		} else {
			Log.i(Params.LCAT, "No browsers available in this device.");
			return false;
		}
	}
	
	Log.i(Params.LCAT, "Check your paramters. URL parameter is mandatory.");
	return false;
}
 
開發者ID:prashantsaini1,項目名稱:ti-chrometabs,代碼行數:24,代碼來源:TichrometabsModule.java

示例3: setHtml

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void setHtml(String html, @Kroll.argument(optional = true) KrollDict d)
{
	setProperty(TiC.PROPERTY_HTML, html);
	setProperty(OPTIONS_IN_SETHTML, d);

	// If the web view has not been created yet, don't set html here. It will be set in processProperties() when the
	// view is created.
	TiUIView v = peekView();
	if (v != null) {
		if (TiApplication.isUIThread()) {
			((TiUIWebView) v).setHtml(html, d);
		} else {
			getMainHandler().sendEmptyMessage(MSG_SET_HTML);
		}
	}
}
 
開發者ID:chreck,項目名稱:movento-webview,代碼行數:18,代碼來源:WebViewProxy.java

示例4: clearSchedule

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void clearSchedule() {
    TiApplication app = TiApplication.getInstance();

    int ntfCount = app.getAppProperties().getInt(PROPERTY_NOTIFICATION_COUNTER, 0);

    Log.d(TAG, "Clearing " + ntfCount + " notifications");

    if(ntfCount > 0) {
        Intent intent = new Intent(app.getApplicationContext(), NotificationPublisher.class);
        for(int i = 0; i < ntfCount; i++) {
            PendingIntent pendingIntent = PendingIntent.getBroadcast(app.getApplicationContext(), i, intent, PendingIntent.FLAG_ONE_SHOT);
            AlarmManager alarmManager = (AlarmManager)app.getApplicationContext().getSystemService(Context.ALARM_SERVICE);
            alarmManager.cancel(pendingIntent);
            pendingIntent.cancel();
        }

        app.getAppProperties().setInt(PROPERTY_NOTIFICATION_COUNTER, 0);
    }
}
 
開發者ID:a-voityuk,項目名稱:CTTimekoGCM,代碼行數:21,代碼來源:CttimekogcmModule.java

示例5: schedule

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void schedule(long time, HashMap data) {
    TiApplication app = TiApplication.getInstance();
    int ntfId = app.getAppProperties().getInt(PROPERTY_NOTIFICATION_COUNTER, 0);

    Log.d(TAG, "Scheduling notification " + ntfId + " at " + time);

    Intent intent = new Intent(app.getApplicationContext(), NotificationPublisher.class);
    intent.putExtra(PROPERTY_NOTIFICATION_DATA, data);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(app.getApplicationContext(), ntfId, intent, PendingIntent.FLAG_ONE_SHOT);

    AlarmManager alarmManager = (AlarmManager)app.getApplicationContext().getSystemService(Context.ALARM_SERVICE);
    alarmManager.set(AlarmManager.RTC_WAKEUP, time, pendingIntent);

    app.getAppProperties().setInt(PROPERTY_NOTIFICATION_COUNTER, ntfId+1);
}
 
開發者ID:a-voityuk,項目名稱:CTTimekoGCM,代碼行數:17,代碼來源:CttimekogcmModule.java

示例6: hasPermission

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
/**
 * check, if given permission is currently granted
 * 
 * @param requestedPermission - permission as defined in Manifest
 * @return
 */
@Kroll.method
public boolean hasPermission(@Kroll.argument() String requestedPermission) {
	Log.d(LCAT, "check for granted permission: " + requestedPermission);

	// TODO really depends on Build or Platform???
	if (Build.VERSION.SDK_INT < 23) {
		return true;
	}

	Context ctx = TiApplication.getInstance().getApplicationContext(); 
	if (ContextCompat.checkSelfPermission(ctx,
			requestedPermission) != PackageManager.PERMISSION_GRANTED) {
		return false;
	}
	return true;
}
 
開發者ID:stgrosshh,項目名稱:tipermissions,代碼行數:23,代碼來源:TipermissionsModule.java

示例7: requestPermission

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
/**
 * Request a permission and optionally register a callback for the current activity
 * 
 * @param requestedPermission permission as defined in Manifest
 * @param permissionCallback function called with result of permission prompt
 * @param requestCode - 8 Bit value to associate callback with request - if none is provided a system generated will used
 * @return true in case of valid request, false if requested permission is not a valid one
 */
@Kroll.method
public boolean requestPermission(String requestedPermission,
		@Kroll.argument(optional = true) KrollFunction permissionCallback,
		@Kroll.argument(optional = true) Integer requestCode) {

	Log.d(LCAT, "Requesting permission: " + requestedPermission);

	if (!isValidPermissionString(requestedPermission)) {
		Log.e(LCAT, "Requested permission is not supported :"
				+ requestedPermission);
		return false;
	}

	return handleRequest(new String[]{requestedPermission}, requestCode, permissionCallback);

}
 
開發者ID:stgrosshh,項目名稱:tipermissions,代碼行數:25,代碼來源:TipermissionsModule.java

示例8: requestPermissions

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
/**
	 * Request a permission and optionally register a callback for the current activity
	 * 
	 * @param requestedPermissions Array of permissions as defined in Manifest
	 * @param permissionCallback function called with result of permission prompt
	 * @param requestCode - 8 Bit value to associate callback with request - if none is provided, a system generated one is used
	 * @return true in case of valid request, false if requested permission is not a valid one
	 */
	@Kroll.method
	public boolean requestPermissions(@Kroll.argument String[] requestedPerms,
			@Kroll.argument(optional = true) KrollFunction permissionCallback,
			@Kroll.argument(optional = true) Integer requestCode)
			 {

//		String[] requestedPermissions = new String[]{requestedPerms};//(String[])requestedPerms;
		for(String permission:requestedPerms) {
			Log.d(LCAT, "Requesting permission: " + permission);

			if (!isValidPermissionString(permission)) {
				Log.e(LCAT, "Requested permission is not supported :"
						+ permission);
				return false;
			}
		}

		return handleRequest(requestedPerms, requestCode, permissionCallback);

	}
 
開發者ID:stgrosshh,項目名稱:tipermissions,代碼行數:29,代碼來源:TipermissionsModule.java

示例9: registerForPushNotifications

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void registerForPushNotifications(HashMap options) {
	Activity activity = TiApplication.getAppRootOrCurrentActivity();

	if (false == options.containsKey("callback")) {
		Log.e(LCAT, "You have to specify a callback attribute when calling registerForPushNotifications");
		return;
	}

	messageCallback = (KrollFunction)options.get("callback");

	successCallback = options.containsKey("success") ? (KrollFunction)options.get("success") : null;
	errorCallback = options.containsKey("error") ? (KrollFunction)options.get("error") : null;

	parseBootIntent();

	if (checkPlayServices()) {
		activity.startService( new Intent(activity, RegistrationIntentService.class) );
	}
}
 
開發者ID:caffeinalab,項目名稱:ti.goosh,代碼行數:21,代碼來源:TiGooshModule.java

示例10: unregisterForPushNotifications

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void unregisterForPushNotifications() {
	final String senderId = getSenderId();
	final Context context = TiApplication.getInstance().getApplicationContext();

	new AsyncTask<Void, Void, Void>() {
		@Override
		protected Void doInBackground(Void... params) {
			try {
				InstanceID.getInstance(context).deleteToken(senderId, GoogleCloudMessaging.INSTANCE_ID_SCOPE);
				Log.d(LCAT, "delete instanceid succeeded");
			} catch (final IOException e) {
				Log.e(LCAT, "remove token failed - error: " + e.getMessage());
			}
			return null;
		}
	}.execute();
}
 
開發者ID:caffeinalab,項目名稱:ti.goosh,代碼行數:19,代碼來源:TiGooshModule.java

示例11: onAppCreate

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.onAppCreate
public static void onAppCreate(TiApplication app)
{
	Log.d(LCAT, "inside onAppCreate");
	
	// put module init code that needs to run when the application is created
	// Store a reference to the parse singleton now that the app is ready
	parseSingleton = ParseSingleton.Instance();

	// Obtain the application and client keys from the tiapp.xml file.
	// It must be stored there because of the way Android applications work,
	// we can't initialize the module during runtime because the application is
	// started when a push notification is received
	String propertyAppId = app.getAppProperties().getString(ParseSingleton.PROPERTY_APP_ID, "");
	String propertyClientKey = app.getAppProperties().getString(ParseSingleton.PROPERTY_CLIENT_KEY, "");
	String propertyServerUrl = app.getAppProperties().getString(ParseSingleton.PROPERTY_SERVER_URL, "");

	// Invoke the Parse SDK Initialize method
	//parseSingleton.InitializeParse(propertyAppId, propertyClientKey, app);
	parseSingleton.InitializeParseWithConfig(propertyAppId, propertyClientKey, propertyServerUrl, app);
}
 
開發者ID:E2010,項目名稱:android-parse-module-titanium-3-5,代碼行數:22,代碼來源:AndroidTitaniumParseModule.java

示例12: updateObject

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void updateObject(final HashMap data, final KrollFunction applicationCallback) {
	final ParseObject convertedObject = (ParseObject)ParseDataConversions.ConvertToParseObjectIfNecessary(data);
	SaveCallback parseCallback = new SaveCallback() {
		public void done(ParseException e) {
			HashMap result = new HashMap();
			HashMap returnObject = ParseDataConversions.ObjectToHashMap(convertedObject);
			if (e == null) {
				result.put("object", returnObject);
			} else {
				// There was an error
				result.put("error", e.toString());
			}

			if (applicationCallback != null) {
				applicationCallback.callAsync(getKrollObject(), result);
			}
		}
	};

	parseSingleton.UpdateDataObject(convertedObject, parseCallback);
}
 
開發者ID:E2010,項目名稱:android-parse-module-titanium-3-5,代碼行數:23,代碼來源:AndroidTitaniumParseModule.java

示例13: deleteObject

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void deleteObject(String className, String objectId, final KrollFunction applicationCallback) {
	DeleteCallback parseCallback = new DeleteCallback() {
		public void done(ParseException e) {
			HashMap result = new HashMap();
			if (e == null) {
				result.put("success", true);
			} else {
				result.put("error", e.toString());
			}

			applicationCallback.callAsync(getKrollObject(), result);
		}
	};

	parseSingleton.DeleteDataObject(className, objectId, parseCallback);
}
 
開發者ID:E2010,項目名稱:android-parse-module-titanium-3-5,代碼行數:18,代碼來源:AndroidTitaniumParseModule.java

示例14: registerForMultiplePushChannelString

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void registerForMultiplePushChannelString(String deviceToken, String channels, KrollFunction applicationCallback) {
	Log.d(LCAT, "String String Callback");
	Log.d(LCAT, channels);
	
	String[] channelNames = channels.split(",");
	
	for ( String s: channelNames){
		Log.d(LCAT, s);
	}
	
	registerForMultiplePushChannelArray(deviceToken, channelNames, applicationCallback);

	// NOTE: deviceToken is not used, but in order to maintain call
	// compatibility with the iOS module, I'm leaving it as a parameter
	//parseSingleton.SubscribeToMultiplePushChannel(channelName);
	
	// This is just a fake call back function the saveEventually() function will be used and no need for callback
	//HashMap results = new HashMap();
	//results.put("success", true);
	//applicationCallback.callAsync(getKrollObject(), results);
}
 
開發者ID:E2010,項目名稱:android-parse-module-titanium-3-5,代碼行數:23,代碼來源:AndroidTitaniumParseModule.java

示例15: pushChannelList

import org.appcelerator.kroll.annotations.Kroll; //導入依賴的package包/類
@Kroll.method
public void pushChannelList(KrollFunction applicationCallback) {
	HashMap results = new HashMap();

	List<String> channelList = parseSingleton.ChannelSubscriptionList();
	String[] channels = new String[channelList.size()];

	int count = 0;
	for (String channelName : channelList) {
		channels[count] = channelName;
		++count;
	}

	// Store the resulting string list under the 'channels' field for the Titanium App
	results.put("channels", channels);

	applicationCallback.callAsync(getKrollObject(), results);
}
 
開發者ID:E2010,項目名稱:android-parse-module-titanium-3-5,代碼行數:19,代碼來源:AndroidTitaniumParseModule.java


注:本文中的org.appcelerator.kroll.annotations.Kroll類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。