Skip to content

Instantly share code, notes, and snippets.

View runemart's full-sized avatar
🐘
https://androiddev.social/@Kvisten

Rune M. Andersen runemart

🐘
https://androiddev.social/@Kvisten
View GitHub Profile
@runemart
runemart / PC
Last active March 9, 2020 16:55
Corsair Carbide 100R Silent Edition 645 helt ny
Noctua NH-U12S CPU Kjøler 549 helt ny
Intel Core i7-7700K Kaby Lake CPU 2898 2 år
MSI Z270 Tomahawk, Socket-1151 1399 2 år
HyperX Fury DDR4 2400MHz 16GB 1779 2 år
Crucial 250 GB SSD ca 500 mange år
Corsair TX750W PSU ca 800 mange år
Nvidia GTX 560 Ti ca 1500 mange år
@runemart
runemart / mobilepay.java
Created June 8, 2017 06:44
Mobile pay simple integration
@Click(R.id.povh_mobilepay_view)
protected void onMobilePayClick() {
if (MobilePay.getInstance().isMobilePayInstalled(getApplicationContext())) {
Payment payment = new Payment();
payment.setProductPrice(new BigDecimal(ticketOrderRequest.getSum()));
// TODO Add proper payment details
payment.setOrderId("foobar");
startActivityForResult(MobilePay.getInstance().createPaymentIntent(payment), REQUEST_MOBILEPAY_PAYMENT);
} else {
startActivity(MobilePay.getInstance().createDownloadMobilePayIntent(getApplicationContext()));
public class StopMonitoring {
public static final String SOAP_ACTION_GET_STOP_MONITORING = "GetStopMonitoring";
public static final String NODE_MONITORED_VEHICLE_JOURNEY = "MonitoredVehicleJourney";
public static BusStopForecast get(String stopId, String namespace, String url) throws IOException {
String envelope = getEnvelope(stopId, namespace);
String xml = HttpUtil.post(SOAP_ACTION_GET_STOP_MONITORING, new URL(url), envelope);
Elements monitoredStopVisits = Jsoup.parse(xml, "", Parser.xmlParser()).select(NODE_MONITORED_VEHICLE_JOURNEY);
return new BusStopForecast(stopId, monitoredStopVisits);
@runemart
runemart / RecyclerViewAdapterBase.java
Created February 19, 2016 08:47
RecyclerView for AndroidAnnotations
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
public abstract class RecyclerViewAdapterBase<D, V extends View & ViewWrapper.Binder<D>> extends RecyclerView.Adapter<ViewWrapper<D, V>> {
@runemart
runemart / stops.js
Created October 21, 2014 13:08
Holdeplasser
stops = [ {"id":"16010420","name":"Ada Arnfinsens veg","x":10.434407,"y":63.391163, "d": "fm"}, {"id":"16010030","name":"Adresseavisen","x":10.360106,"y":63.34996}, {"id":"16011030","name":"Adresseavisen","x":10.36054,"y":63.350704}, {"id":"16384027","name":"AKS","x":9.900512,"y":63.327186}, {"id":"16388727","name":"AKS","x":9.900144,"y":63.326944}, {"id":"16574027","name":"AKS","x":9.900512,"y":63.327186}, {"id":"16010031","name":"Alf Godagers veg","x":10.394837,"y":63.370136}, {"id":"16010032","name":"Alfheimsvingen","x":10.3276,"y":63.38354}, {"id":"16011032","name":"Alfheimsvingen","x":10.327233,"y":63.384254}, {"id":"16626006","name":"Amunddal","x":10.481619,"y":63.334454}, {"id":"16627006","name":"Amunddal","x":10.48136,"y":63.334465}, {"id":"16364202","name":"Amundmoen","x":9.713896,"y":63.147407}, {"id":"16010258","name":"Anders Buens gate","x":10.429856,"y":63.43846}, {"id":"16011258","name":"Anders Buens gate","x":10.42949,"y":63.438366}, {"id":"16010033","name":"Angelltrøvegen","x":10.461391,"y":63
@runemart
runemart / gist:b3e3778ec9663852837d
Last active August 29, 2015 14:07
DialogFragment with constructor arguments, the proper way, that also handles fragment re-creation by Android OS.
public class CreditCardDialogFragment extends DialogFragment {
public CreditCardDialogFragment() {
// Empty constructor required for DialogFragment
}
public static CreditCardDialogFragment newInstance(CreditCard creditCardOriginal) {
final Bundle args = new Bundle(1);
args.putSerializable(EXTRA_CREDIT_CARD, creditCardOriginal);
CreditCardDialogFragment fragment = new CreditCardDialogFragment();
<?php
require_once('BartebussAPI.class.php');
class TripAPI extends BartebussAPI {
public function __construct(){
parent::__construct();
}
@runemart
runemart / WrappingGridView.java
Created March 26, 2014 11:57
A GridView that uses the necessary height to wrap all of it's children, instead of scrolling
// http://www.jayway.com/2012/10/04/how-to-make-the-height-of-a-gridview-wrap-its-content/
public class WrappingGridView extends GridView {
public WrappingGridView(Context context) {
super(context);
}
public WrappingGridView(Context context, AttributeSet attrs) {
super(context, attrs);
@runemart
runemart / TwoKeyHashMap.java
Created March 26, 2014 11:54
Generic HashMap that takes two keys
public class TwoKeyHashMap<K1, K2, V> extends HashMap<K1, HashMap<K2, V>> {
public void put(K1 key_1, K2 key_2, V value) {
if (containsKey(key_1))
get(key_1).put(key_2, value);
else {
HashMap<K2, V> inner = new HashMap<>();
inner.put(key_2, value);
put(key_1, inner);
}
@runemart
runemart / GCMActivity
Created March 14, 2014 08:41
Android GCM activity (requires AndroidAnnotations)
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.preference.PreferenceManager;
import android.util.Log;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesUtil;
import com.google.android.gms.gcm.GoogleCloudMessaging;
import org.androidannotations.annotations.AfterInject;