From version 4.1.0 on, the mySync client for Android includes a Content Provider which other apps can use to read some information about the user or the client. This page documents this feature. See developer.android.com for information about Content Providers
User information
Content URI: content://{application ID}.provider/user
(for example: content://eu.mysync.android.dm.provider/user
)
...
This content URI will provide a single row of information if the client has been provisioned. Otherwise it will be empty.
Provider columns
Column name | Type | Description |
---|---|---|
accountId | String | User account ID |
deviceId | String | User device ID |
orgCode | String | Organisation code |
serverUrl | String | Server URL |
lastConnection | Long | Timestamp (in milliseconds) of last successful server connection |
Example code
Code Block | ||||
---|---|---|---|---|
| ||||
Context context = this; ContentResolver cr = context.getContentResolver(); Uri uri = Uri.parse("content://eu.mysync.android.dm.provider/user"); String[] projection = {"accountId", "deviceId", "orgCode", "serverUrl", "lastConnection"}; Cursor cursor = cr.query(uri, projection, null, null, null); String msg; if (cursor != null) { if (cursor.moveToFirst()) { String accountId = cursor.getString(0); String deviceId = cursor.getString(1); String orgCode = cursor.getString(2); String serverUrl = cursor.getString(3); long lastConnection = cursor.getLong(4); msg = "mySync is provisioned. accountId: " + accountId + " deviceId: " + deviceId + " orgCode: " + orgCode + " server: " + serverUrl + " lastConnection: " + lastConnection; } else { msg = "mySync is not provisioned (no user information provided)"; } cursor.close(); } else { msg = "mySync is not installed or mySync version does not support URI or URI is wrong."; } Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); |
...