Skip to content

Instantly share code, notes, and snippets.

View celiovasconcelos's full-sized avatar

Célio Vasconcelos celiovasconcelos

View GitHub Profile
<provider android:name="com.pushlink.android.FileProvider" android:authorities="your.package.name" android:exported="true" />
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Uri apkUri = (Uri) intent.getExtras().get("uri");
//enjoy the apk uri
//notice this will be called every 30s (more or less). You need to handle this.
}
}, new IntentFilter(getPackageName() + ".pushlink.APPLY"));
//C# for MonoDroid
using Com.Pushlink.Android;
...
PushLink.Start(this, Resource.Drawable.Icon, "yourApiKey", "yourDeviceID");
<uses-permission android:name="android.permission.INTERNET" />
//Only for popups (FRIENDLY_POPUP or ANNOYING_POPUP)
//You MUST do this, otherwise popups will not work.
//Call it in the Activity you want to show the popup.
//You can show the popup in many screens by adding this in more than one Activity.
@Override
protected void onResume() {
super.onResume();
PushLink.setCurrentActivity(this);
}
//This information will be shown in two places: "Installations" and "Exceptions" tabs of the web administration
PushLink.addMetadata("Ip", getIp());
PushLink.addMetadata("Phone Number", getPhoneNumber());
PushLink.addMetadata("Brand", Build.BRAND);
PushLink.addMetadata("Model", Build.MODEL);
PushLink.addMetadata("OS Version", Build.VERSION.RELEASE);
PushLink.addMetadata("Logged in user", getUserName());
...
//This information will be shown ONLY in the "Exceptions" tab of the web administration
/**
* This method checks if there is a downloaded but not applied update. It
* also notify the user again. It is useful for "Check for updates"
* button.
*
* @return true if there is a pending update
*/
PushLink.hasPendingUpdate();
//When sending exception manually, PushLink doesn't print it in logcat. You have to print it by yourself.
try {
...
} catch (Throwable t) {
Log.e("MyApp", "Some", t);
PushLink.sendAsyncException(t);
//or
Map<String, String> moreInfo = ...
PushLink.sendAsyncException(t, moreInfo);
}
//Don't forget to declare it in AndroidManifest.xml <application android:name=".PushLinkSetup" ... >
public class PushLinkSetup extends android.app.Application {
@Override
public void onCreate() {
super.onCreate();
PushLink.start(this, R.mipmap.ic_launcher, "yourApiKey", "yourDeviceID");
//you can use R.drawable.icon for older sdks
}
}