Skip to content

Commit

Permalink
Merge pull request #388 from jmpascal/1.6.2.Fix
Browse files Browse the repository at this point in the history
1.6.2 hotfix
  • Loading branch information
JM.PASCAL committed Apr 1, 2016
2 parents a75803e + 59ea236 commit c5ce690
Show file tree
Hide file tree
Showing 10 changed files with 92 additions and 31 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ Alfresco Mobile is based on top of our Alfresco Android SDK. More information on
## Where can I find it ?

<a href="https://play.google.com/store/apps/details?id=org.alfresco.mobile.android.application">
<img alt="Get it on Google Play"
src="https://developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
<img alt="Get it on Google Play" height="100" width="300"
src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" />
</a>


Expand Down Expand Up @@ -45,7 +45,7 @@ Before your code can be accepted into the project you must also sign the Individ
## What's the code License ?


Alfresco Mobile for Android 1.5
Alfresco Mobile for Android 1.6.2

Copyright © 2015 Alfresco Software, Ltd. and others.

Expand Down
2 changes: 1 addition & 1 deletion alfresco-mobile-android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ android {

minSdkVersion 15
targetSdkVersion 22
versionCode 60
versionCode 61
versionName VERSION_NAME

manifestPlaceholders = [PROVIDER_AUTHORITY: PROVIDER_AUTHORITY]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,14 @@ public interface VersionNumber
/** Release 3 July 2015. */
int VERSION_1_5_2 = 46;

/** Release Q3 2015. */
/** Release 19 Nov 2015. */
int VERSION_1_6_0 = 50;

int LATEST_VERSION = VERSION_1_6_0;
/** Release 11 March 2015. */
int VERSION_1_6_1 = 60;

/** Release April 2015. */
int VERSION_1_6_2 = 61;

int LATEST_VERSION = VERSION_1_6_2;
}
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ public Fragment createFragment()
// Analytics
// Report only fragment & report at creation enable (cf. pager case)
if (AnalyticsManager.getInstance(getActivity()) != null
|| AnalyticsManager.getInstance(getActivity()).isEnable())
&& AnalyticsManager.getInstance(getActivity()).isEnable())
{
if (frag instanceof AnalyticsManager.FragmentAnalyzed
&& ((AnalyticsManager.FragmentAnalyzed) frag).reportAtCreationEnable())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -342,7 +342,8 @@ public void onClick(View v)
if (AnalyticsManager.getInstance(getActivity()) == null
|| AnalyticsManager.getInstance(getActivity()).isBlocked())
{
boolean isEnable = AnalyticsManager.getInstance(getActivity()).isEnable();
boolean isEnable = AnalyticsManager.getInstance(getActivity()) != null
&& AnalyticsManager.getInstance(getActivity()).isEnable();

diagnosticVH = HolderUtils.configure(viewById(R.id.settings_diagnostic),
getString(R.string.settings_feedback_diagnostic), getString(R.string.settings_custom_menu_disable),
Expand All @@ -353,7 +354,8 @@ public void onClick(View v)
}
else
{
boolean isEnable = AnalyticsManager.getInstance(getActivity()).isEnable();
boolean isEnable = AnalyticsManager.getInstance(getActivity()) != null
&& AnalyticsManager.getInstance(getActivity()).isEnable();

diagnosticVH = HolderUtils.configure(viewById(R.id.settings_diagnostic),
getString(R.string.settings_feedback_diagnostic),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

import org.alfresco.mobile.android.application.R;
import org.alfresco.mobile.android.application.activity.BaseActivity;
import org.alfresco.mobile.android.application.activity.MainActivity;
import org.alfresco.mobile.android.application.activity.WelcomeActivity;
import org.alfresco.mobile.android.application.fragments.builder.LeafFragmentBuilder;
import org.alfresco.mobile.android.application.managers.ConfigManager;
Expand All @@ -41,6 +42,7 @@
import org.alfresco.mobile.android.ui.utils.UIUtils;

import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
Expand Down Expand Up @@ -251,6 +253,8 @@ public void onCancel(DialogInterface dialog)
{
ConfigManager.getInstance(getActivity()).setSession(event.data.getId(),
SessionUtils.getSession(getActivity()));
startActivity(new Intent(getActivity(), MainActivity.class));
getActivity().finish();
}
}

Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
## DEFAULT BUILD VARIANT
####################################################################
# Current Version number of the application
VERSION_NAME=1.6.1
VERSION_NAME=1.6.2

# Build Number of the application
# Overrides by Continuous Integration System during build
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,12 @@
import org.alfresco.mobile.android.platform.exception.AlfrescoAppException;
import org.alfresco.mobile.android.platform.extensions.MobileIronManager;
import org.alfresco.mobile.android.platform.mdm.MDMEvent;
import org.alfresco.mobile.android.platform.mdm.MDMManager;

import android.app.IntentService;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;

public class AppConnectService extends IntentService
{
Expand All @@ -36,28 +38,36 @@ public AppConnectService()
@Override
protected void onHandleIntent(Intent intent)
{
if (ACTION_HANDLE_CONFIG.equals(intent.getAction()))

try
{
Intent i;
try
if (ACTION_HANDLE_CONFIG.equals(intent.getAction()))
{
Bundle config = intent.getBundleExtra(CONFIG);
Intent i;
try
{
Bundle config = intent.getBundleExtra(CONFIG);

if (config == null) { throw new AlfrescoAppException("No Config."); }
if (config == null) { throw new AlfrescoAppException("No Config."); }

MobileIronManager.getInstance(getApplicationContext()).setConfig(config);
i = intent.getParcelableExtra(CONFIG_APPLIED_INTENT);
MobileIronManager.getInstance(getApplicationContext()).setConfig(config);
i = intent.getParcelableExtra(CONFIG_APPLIED_INTENT);

EventBusManager.getInstance().post(new MDMEvent());
}
catch (Exception e)
{
i = intent.getParcelableExtra(CONFIG_ERROR_INTENT);
i.putExtra(ERROR_STRING, e.getMessage());
EventBusManager.getInstance().post(new MDMEvent());
}
catch (Exception e)
{
i = intent.getParcelableExtra(CONFIG_ERROR_INTENT);
i.putExtra(ERROR_STRING, e.getMessage());

EventBusManager.getInstance().post(new MDMEvent(e));
EventBusManager.getInstance().post(new MDMEvent(e));
}
startService(MDMManager.createExplicitFromImplicitIntent(getApplicationContext(), i));
}
startService(i);
}
catch (Exception e)
{
Log.i(TAG, "Error during handle config");
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,14 @@

import org.alfresco.mobile.android.platform.exception.AlfrescoAppException;
import org.alfresco.mobile.android.platform.extensions.MobileIronManager;
import org.alfresco.mobile.android.platform.mdm.MDMManager;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.text.TextUtils;
import android.util.Log;

public class MobileIronManagerImpl extends MobileIronManager
{
Expand Down Expand Up @@ -63,9 +65,16 @@ protected MobileIronManagerImpl(Context context)
// ///////////////////////////////////////////////////////////////////////////
public void requestConfig(FragmentActivity activity, String applicationId)
{
Intent intent = new Intent("com.mobileiron.REQUEST_CONFIG");
intent.putExtra("packageName", applicationId);
activity.startService(intent);
try
{
Intent intent = new Intent("com.mobileiron.REQUEST_CONFIG");
intent.putExtra("packageName", applicationId);
activity.startService(MDMManager.createExplicitFromImplicitIntent(activity, intent));
}
catch (Exception e)
{
Log.i(TAG, "Error during request config");
}
}

@Override
Expand Down Expand Up @@ -97,8 +106,8 @@ public void setConfig(Bundle b)

// REPOSITORY URL
String repositoryURL = (String) b.get(ALFRESCO_REPOSITORY_URL);
if (TextUtils.isEmpty(repositoryURL)) { throw new AlfrescoAppException(ALFRESCO_REPOSITORY_URL
+ " can't be empty."); }
if (TextUtils.isEmpty(
repositoryURL)) { throw new AlfrescoAppException(ALFRESCO_REPOSITORY_URL + " can't be empty."); }

URL u = null;
try
Expand All @@ -112,7 +121,7 @@ public void setConfig(Bundle b)

// USERNAME
String username = (String) b.get(ALFRESCO_USERNAME);
if (TextUtils.isEmpty(repositoryURL)) { throw new AlfrescoAppException(ALFRESCO_USERNAME + " can't be empty."); }
if (TextUtils.isEmpty(username)) { throw new AlfrescoAppException(ALFRESCO_USERNAME + " can't be empty."); }
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,21 @@

package org.alfresco.mobile.android.platform.mdm;

import java.util.List;

import org.alfresco.mobile.android.platform.EventBusManager;
import org.alfresco.mobile.android.platform.Manager;
import org.alfresco.mobile.android.platform.extensions.MobileIronManager;
import org.alfresco.mobile.android.platform.utils.AndroidVersion;
import org.alfresco.mobile.android.platform.utils.BundleUtils;

import android.annotation.TargetApi;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.RestrictionsManager;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
Expand Down Expand Up @@ -160,4 +166,28 @@ else if (restrictions != null)
return "";
}
}

public static Intent createExplicitFromImplicitIntent(Context context, Intent implicitIntent)
{
// Retrieve all services that can match the given intent
PackageManager pm = context.getPackageManager();
List<ResolveInfo> resolveInfo = pm.queryIntentServices(implicitIntent, 0);

// Make sure only one match was found
if (resolveInfo == null || resolveInfo.size() != 1) { return null; }

// Get component info and create ComponentName
ResolveInfo serviceInfo = resolveInfo.get(0);
String packageName = serviceInfo.serviceInfo.packageName;
String className = serviceInfo.serviceInfo.name;
ComponentName component = new ComponentName(packageName, className);

// Create a new intent. Use the old one for extras and such reuse
Intent explicitIntent = new Intent(implicitIntent);

// Set the component to be explicit
explicitIntent.setComponent(component);

return explicitIntent;
}
}

0 comments on commit c5ce690

Please sign in to comment.