Merge "Centralize EmailServiceInfo retreival and pre-fill data for autodiscover" into ub-mail-master
This commit is contained in:
commit
5ca9d39008
|
@ -562,7 +562,7 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
updateContentFragment(true /* addToBackstack */);
|
updateContentFragment(true /* addToBackstack */);
|
||||||
} else {
|
} else {
|
||||||
mState = STATE_AUTO_DISCOVER;
|
mState = STATE_AUTO_DISCOVER;
|
||||||
initiateCheckSettingsFragment(SetupDataFragment.CHECK_AUTODISCOVER);
|
initiateAutoDiscover();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STATE_AUTO_DISCOVER:
|
case STATE_AUTO_DISCOVER:
|
||||||
|
@ -578,8 +578,7 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
break;
|
break;
|
||||||
case STATE_CHECKING_INCOMING:
|
case STATE_CHECKING_INCOMING:
|
||||||
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
||||||
EmailServiceUtils.getServiceInfo(this,
|
mSetupData.getIncomingServiceInfo(this);
|
||||||
getSetupData().getAccount().getProtocol(this));
|
|
||||||
if (serviceInfo.usesSmtp) {
|
if (serviceInfo.usesSmtp) {
|
||||||
mState = STATE_MANUAL_OUTGOING;
|
mState = STATE_MANUAL_OUTGOING;
|
||||||
} else {
|
} else {
|
||||||
|
@ -762,17 +761,20 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
recvAuth.setUserName(mProvider.incomingUsername);
|
recvAuth.setUserName(mProvider.incomingUsername);
|
||||||
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, recvAuth,
|
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, recvAuth,
|
||||||
mSetupData.getCredentialResults());
|
mSetupData.getCredentialResults());
|
||||||
|
mSetupData.setIncomingCredLoaded(true);
|
||||||
|
|
||||||
final EmailServiceUtils.EmailServiceInfo info = EmailServiceUtils.getServiceInfo(this,
|
final EmailServiceUtils.EmailServiceInfo info = mSetupData.getIncomingServiceInfo(this);
|
||||||
recvAuth.mProtocol);
|
|
||||||
recvAuth.mPort =
|
recvAuth.mPort =
|
||||||
((recvAuth.mFlags & HostAuth.FLAG_SSL) != 0) ? info.portSsl : info.port;
|
((recvAuth.mFlags & HostAuth.FLAG_SSL) != 0) ? info.portSsl : info.port;
|
||||||
|
|
||||||
final HostAuth sendAuth = account.getOrCreateHostAuthSend(this);
|
if (info.usesSmtp) {
|
||||||
sendAuth.setHostAuthFromString(mProvider.outgoingUri);
|
final HostAuth sendAuth = account.getOrCreateHostAuthSend(this);
|
||||||
sendAuth.setUserName(mProvider.outgoingUsername);
|
sendAuth.setHostAuthFromString(mProvider.outgoingUri);
|
||||||
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, sendAuth,
|
sendAuth.setUserName(mProvider.outgoingUsername);
|
||||||
mSetupData.getCredentialResults());
|
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, sendAuth,
|
||||||
|
mSetupData.getCredentialResults());
|
||||||
|
mSetupData.setOutgoingCredLoaded(true);
|
||||||
|
}
|
||||||
|
|
||||||
// Populate the setup data, assuming that the duplicate account check will succeed
|
// Populate the setup data, assuming that the duplicate account check will succeed
|
||||||
populateSetupData(mOwnerName, email);
|
populateSetupData(mOwnerName, email);
|
||||||
|
@ -798,10 +800,8 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
* @param account Account object to fill in
|
* @param account Account object to fill in
|
||||||
*/
|
*/
|
||||||
public void setDefaultsForProtocol(Account account) {
|
public void setDefaultsForProtocol(Account account) {
|
||||||
final String protocol = account.getOrCreateHostAuthRecv(this).mProtocol;
|
final EmailServiceUtils.EmailServiceInfo info = mSetupData.getIncomingServiceInfo(this);
|
||||||
if (protocol == null) return;
|
if (info == null) return;
|
||||||
final EmailServiceUtils.EmailServiceInfo info =
|
|
||||||
EmailServiceUtils.getServiceInfo(this, protocol);
|
|
||||||
account.mSyncInterval = info.defaultSyncInterval;
|
account.mSyncInterval = info.defaultSyncInterval;
|
||||||
account.mSyncLookback = info.defaultLookback;
|
account.mSyncLookback = info.defaultLookback;
|
||||||
if (info.offerLocalDeletes) {
|
if (info.offerLocalDeletes) {
|
||||||
|
@ -839,6 +839,37 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
@Override
|
@Override
|
||||||
public void onAccountServerSaveComplete() {}
|
public void onAccountServerSaveComplete() {}
|
||||||
|
|
||||||
|
private void initiateAutoDiscover() {
|
||||||
|
final String email = mSetupData.getEmail();
|
||||||
|
final String[] emailParts = email.split("@");
|
||||||
|
final String domain = emailParts[1];
|
||||||
|
|
||||||
|
final Account account = mSetupData.getAccount();
|
||||||
|
|
||||||
|
final HostAuth recvAuth = account.getOrCreateHostAuthRecv(this);
|
||||||
|
recvAuth.setUserName(email);
|
||||||
|
recvAuth.setConnection(mSetupData.getIncomingProtocol(), domain,
|
||||||
|
HostAuth.PORT_UNKNOWN, HostAuth.FLAG_NONE);
|
||||||
|
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, recvAuth,
|
||||||
|
mSetupData.getCredentialResults());
|
||||||
|
mSetupData.setIncomingCredLoaded(true);
|
||||||
|
|
||||||
|
final EmailServiceUtils.EmailServiceInfo info =
|
||||||
|
mSetupData.getIncomingServiceInfo(this);
|
||||||
|
if (info.usesSmtp) {
|
||||||
|
final HostAuth sendAuth = account.getOrCreateHostAuthSend(this);
|
||||||
|
sendAuth.setUserName(email);
|
||||||
|
sendAuth.setConnection(HostAuth.LEGACY_SCHEME_SMTP, domain,
|
||||||
|
HostAuth.PORT_UNKNOWN, HostAuth.FLAG_NONE);
|
||||||
|
AccountSetupCredentialsFragment.populateHostAuthWithResults(this, sendAuth,
|
||||||
|
mSetupData.getCredentialResults());
|
||||||
|
mSetupData.setOutgoingCredLoaded(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Populate the setup data, assuming that the duplicate account check will succeed
|
||||||
|
initiateCheckSettingsFragment(SetupDataFragment.CHECK_AUTODISCOVER);
|
||||||
|
}
|
||||||
|
|
||||||
private void initiateCheckSettingsFragment(int checkMode) {
|
private void initiateCheckSettingsFragment(int checkMode) {
|
||||||
final Fragment f = AccountCheckSettingsFragment.newInstance(checkMode);
|
final Fragment f = AccountCheckSettingsFragment.newInstance(checkMode);
|
||||||
final Fragment d = CheckSettingsProgressDialogFragment.newInstance(checkMode);
|
final Fragment d = CheckSettingsProgressDialogFragment.newInstance(checkMode);
|
||||||
|
@ -925,11 +956,8 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onChooseProtocol(String protocol) {
|
public void onChooseProtocol(String protocol) {
|
||||||
|
mSetupData.setIncomingProtocol(this, protocol);
|
||||||
final Account account = mSetupData.getAccount();
|
final Account account = mSetupData.getAccount();
|
||||||
final HostAuth recvAuth = account.getOrCreateHostAuthRecv(this);
|
|
||||||
recvAuth.setConnection(protocol, recvAuth.mAddress, recvAuth.mPort, recvAuth.mFlags);
|
|
||||||
|
|
||||||
recvAuth.mLogin = mSetupData.getEmail();
|
|
||||||
setDefaultsForProtocol(account);
|
setDefaultsForProtocol(account);
|
||||||
proceed();
|
proceed();
|
||||||
}
|
}
|
||||||
|
@ -957,8 +985,7 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
account.setDisplayName(account.getEmailAddress());
|
account.setDisplayName(account.getEmailAddress());
|
||||||
int newFlags = account.getFlags() & ~(Account.FLAGS_BACKGROUND_ATTACHMENTS);
|
int newFlags = account.getFlags() & ~(Account.FLAGS_BACKGROUND_ATTACHMENTS);
|
||||||
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
||||||
EmailServiceUtils.getServiceInfo(getApplicationContext(),
|
mSetupData.getIncomingServiceInfo(this);
|
||||||
account.mHostAuthRecv.mProtocol);
|
|
||||||
if (serviceInfo.offerAttachmentPreload && fragment.getBackgroundAttachmentsValue()) {
|
if (serviceInfo.offerAttachmentPreload && fragment.getBackgroundAttachmentsValue()) {
|
||||||
newFlags |= Account.FLAGS_BACKGROUND_ATTACHMENTS;
|
newFlags |= Account.FLAGS_BACKGROUND_ATTACHMENTS;
|
||||||
}
|
}
|
||||||
|
@ -1003,11 +1030,9 @@ public class AccountSetupFinal extends AccountSetupActivity
|
||||||
// If the account manager initiated the creation, and success was not reported,
|
// If the account manager initiated the creation, and success was not reported,
|
||||||
// then we assume that we're giving up (for any reason) - report failure.
|
// then we assume that we're giving up (for any reason) - report failure.
|
||||||
if (mAccountAuthenticatorResponse != null) {
|
if (mAccountAuthenticatorResponse != null) {
|
||||||
final Account account = getSetupData().getAccount();
|
final EmailServiceUtils.EmailServiceInfo info = mSetupData.getIncomingServiceInfo(this);
|
||||||
final EmailServiceUtils.EmailServiceInfo info =
|
|
||||||
EmailServiceUtils.getServiceInfo(this, account.getProtocol(this));
|
|
||||||
final Bundle b = new Bundle(2);
|
final Bundle b = new Bundle(2);
|
||||||
b.putString(AccountManager.KEY_ACCOUNT_NAME, account.getEmailAddress());
|
b.putString(AccountManager.KEY_ACCOUNT_NAME, mSetupData.getEmail());
|
||||||
b.putString(AccountManager.KEY_ACCOUNT_TYPE, info.accountType);
|
b.putString(AccountManager.KEY_ACCOUNT_TYPE, info.accountType);
|
||||||
mAccountAuthenticatorResponse.onResult(b);
|
mAccountAuthenticatorResponse.onResult(b);
|
||||||
mAccountAuthenticatorResponse = null;
|
mAccountAuthenticatorResponse = null;
|
||||||
|
|
|
@ -40,7 +40,6 @@ import com.android.email.R;
|
||||||
import com.android.email.activity.UiUtilities;
|
import com.android.email.activity.UiUtilities;
|
||||||
import com.android.email.activity.setup.AuthenticationView.AuthenticationCallback;
|
import com.android.email.activity.setup.AuthenticationView.AuthenticationCallback;
|
||||||
import com.android.email.provider.AccountBackupRestore;
|
import com.android.email.provider.AccountBackupRestore;
|
||||||
import com.android.email.service.EmailServiceUtils;
|
|
||||||
import com.android.email.service.EmailServiceUtils.EmailServiceInfo;
|
import com.android.email.service.EmailServiceUtils.EmailServiceInfo;
|
||||||
import com.android.email.view.CertificateSelector;
|
import com.android.email.view.CertificateSelector;
|
||||||
import com.android.email.view.CertificateSelector.HostCallback;
|
import com.android.email.view.CertificateSelector.HostCallback;
|
||||||
|
@ -210,7 +209,7 @@ public class AccountSetupIncomingFragment extends AccountServerBaseFragment
|
||||||
mSetupData.setIncomingCredLoaded(true);
|
mSetupData.setIncomingCredLoaded(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
mServiceInfo = EmailServiceUtils.getServiceInfo(mAppContext, recvAuth.mProtocol);
|
mServiceInfo = mSetupData.getIncomingServiceInfo(context);
|
||||||
|
|
||||||
if (mServiceInfo.offerLocalDeletes) {
|
if (mServiceInfo.offerLocalDeletes) {
|
||||||
SpinnerOption deletePolicies[] = {
|
SpinnerOption deletePolicies[] = {
|
||||||
|
@ -341,7 +340,7 @@ public class AccountSetupIncomingFragment extends AccountServerBaseFragment
|
||||||
|
|
||||||
final Account account = mSetupData.getAccount();
|
final Account account = mSetupData.getAccount();
|
||||||
final HostAuth recvAuth = account.getOrCreateHostAuthRecv(mAppContext);
|
final HostAuth recvAuth = account.getOrCreateHostAuthRecv(mAppContext);
|
||||||
mServiceInfo = EmailServiceUtils.getServiceInfo(mAppContext, recvAuth.mProtocol);
|
mServiceInfo = mSetupData.getIncomingServiceInfo(getActivity());
|
||||||
mAuthenticationView.setAuthInfo(mServiceInfo.offerOAuth, recvAuth);
|
mAuthenticationView.setAuthInfo(mServiceInfo.offerOAuth, recvAuth);
|
||||||
if (mAuthenticationLabel != null) {
|
if (mAuthenticationLabel != null) {
|
||||||
if (mServiceInfo.offerOAuth) {
|
if (mServiceInfo.offerOAuth) {
|
||||||
|
@ -418,9 +417,7 @@ public class AccountSetupIncomingFragment extends AccountServerBaseFragment
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getPortFromSecurityType(boolean useSsl) {
|
private int getPortFromSecurityType(boolean useSsl) {
|
||||||
final EmailServiceInfo info = EmailServiceUtils.getServiceInfo(mAppContext,
|
return useSsl ? mServiceInfo.portSsl : mServiceInfo.port;
|
||||||
mSetupData.getAccount().mHostAuthRecv.mProtocol);
|
|
||||||
return useSsl ? info.portSsl : info.port;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean getSslSelected() {
|
private boolean getSslSelected() {
|
||||||
|
|
|
@ -105,7 +105,7 @@ public class AccountSetupNamesFragment extends AccountSetupFragment {
|
||||||
|
|
||||||
// Remember whether we're an EAS account, since it doesn't require the user name field
|
// Remember whether we're an EAS account, since it doesn't require the user name field
|
||||||
final EmailServiceUtils.EmailServiceInfo info =
|
final EmailServiceUtils.EmailServiceInfo info =
|
||||||
EmailServiceUtils.getServiceInfo(getActivity(), account.mHostAuthRecv.mProtocol);
|
setupData.getIncomingServiceInfo(getActivity());
|
||||||
if (!info.usesSmtp) {
|
if (!info.usesSmtp) {
|
||||||
mRequiresName = false;
|
mRequiresName = false;
|
||||||
mName.setVisibility(View.GONE);
|
mName.setVisibility(View.GONE);
|
||||||
|
|
|
@ -79,13 +79,12 @@ public class AccountSetupOptionsFragment extends AccountSetupFragment {
|
||||||
|
|
||||||
final View view = getView();
|
final View view = getView();
|
||||||
|
|
||||||
final SetupDataFragment.SetupDataContainer container =
|
final SetupDataFragment setupData =
|
||||||
(SetupDataFragment.SetupDataContainer) getActivity();
|
((SetupDataFragment.SetupDataContainer) getActivity()).getSetupData();
|
||||||
final Account account = container.getSetupData().getAccount();
|
final Account account = setupData.getAccount();
|
||||||
|
|
||||||
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
final EmailServiceUtils.EmailServiceInfo serviceInfo =
|
||||||
EmailServiceUtils.getServiceInfo(getActivity().getApplicationContext(),
|
setupData.getIncomingServiceInfo(getActivity());
|
||||||
account.mHostAuthRecv.mProtocol);
|
|
||||||
|
|
||||||
final CharSequence[] frequencyValues = serviceInfo.syncIntervals;
|
final CharSequence[] frequencyValues = serviceInfo.syncIntervals;
|
||||||
final CharSequence[] frequencyEntries = serviceInfo.syncIntervalStrings;
|
final CharSequence[] frequencyEntries = serviceInfo.syncIntervalStrings;
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
package com.android.email.activity.setup;
|
package com.android.email.activity.setup;
|
||||||
|
|
||||||
import android.app.Fragment;
|
import android.app.Fragment;
|
||||||
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
|
|
||||||
|
import com.android.email.service.EmailServiceUtils;
|
||||||
import com.android.emailcommon.provider.Account;
|
import com.android.emailcommon.provider.Account;
|
||||||
|
import com.android.emailcommon.provider.HostAuth;
|
||||||
import com.android.emailcommon.provider.Policy;
|
import com.android.emailcommon.provider.Policy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -42,6 +45,7 @@ public class SetupDataFragment extends Fragment implements Parcelable {
|
||||||
private static final String SAVESTATE_INCOMING_LOADED = "SetupDataFragment.incomingLoaded";
|
private static final String SAVESTATE_INCOMING_LOADED = "SetupDataFragment.incomingLoaded";
|
||||||
private static final String SAVESTATE_OUTGOING_LOADED = "SetupDataFragment.outgoingLoaded";
|
private static final String SAVESTATE_OUTGOING_LOADED = "SetupDataFragment.outgoingLoaded";
|
||||||
private static final String SAVESTATE_POLICY = "SetupDataFragment.policy";
|
private static final String SAVESTATE_POLICY = "SetupDataFragment.policy";
|
||||||
|
private static final String SAVESTATE_INCOMING_PROTOCOL = "SetupDataFragment.incomingProtocol";
|
||||||
|
|
||||||
// All access will be through getters/setters
|
// All access will be through getters/setters
|
||||||
private int mFlowMode = FLOW_MODE_NORMAL;
|
private int mFlowMode = FLOW_MODE_NORMAL;
|
||||||
|
@ -54,6 +58,9 @@ public class SetupDataFragment extends Fragment implements Parcelable {
|
||||||
private boolean mOutgoingCredLoaded = true;
|
private boolean mOutgoingCredLoaded = true;
|
||||||
// This is accessed off-thread in AccountCheckSettingsFragment
|
// This is accessed off-thread in AccountCheckSettingsFragment
|
||||||
private volatile Policy mPolicy;
|
private volatile Policy mPolicy;
|
||||||
|
// Cache incoming protocol and service info here
|
||||||
|
private EmailServiceUtils.EmailServiceInfo mIncomingServiceInfo;
|
||||||
|
private String mIncomingProtocol;
|
||||||
|
|
||||||
public interface SetupDataContainer {
|
public interface SetupDataContainer {
|
||||||
public SetupDataFragment getSetupData();
|
public SetupDataFragment getSetupData();
|
||||||
|
@ -86,6 +93,7 @@ public class SetupDataFragment extends Fragment implements Parcelable {
|
||||||
outState.putBoolean(SAVESTATE_INCOMING_LOADED, mIncomingCredLoaded);
|
outState.putBoolean(SAVESTATE_INCOMING_LOADED, mIncomingCredLoaded);
|
||||||
outState.putBoolean(SAVESTATE_OUTGOING_LOADED, mOutgoingCredLoaded);
|
outState.putBoolean(SAVESTATE_OUTGOING_LOADED, mOutgoingCredLoaded);
|
||||||
outState.putParcelable(SAVESTATE_POLICY, mPolicy);
|
outState.putParcelable(SAVESTATE_POLICY, mPolicy);
|
||||||
|
outState.putString(SAVESTATE_INCOMING_PROTOCOL, mIncomingProtocol);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -99,6 +107,7 @@ public class SetupDataFragment extends Fragment implements Parcelable {
|
||||||
mIncomingCredLoaded = savedInstanceState.getBoolean(SAVESTATE_INCOMING_LOADED);
|
mIncomingCredLoaded = savedInstanceState.getBoolean(SAVESTATE_INCOMING_LOADED);
|
||||||
mOutgoingCredLoaded = savedInstanceState.getBoolean(SAVESTATE_OUTGOING_LOADED);
|
mOutgoingCredLoaded = savedInstanceState.getBoolean(SAVESTATE_OUTGOING_LOADED);
|
||||||
mPolicy = savedInstanceState.getParcelable(SAVESTATE_POLICY);
|
mPolicy = savedInstanceState.getParcelable(SAVESTATE_POLICY);
|
||||||
|
mIncomingProtocol = savedInstanceState.getString(SAVESTATE_INCOMING_PROTOCOL);
|
||||||
}
|
}
|
||||||
setRetainInstance(true);
|
setRetainInstance(true);
|
||||||
}
|
}
|
||||||
|
@ -165,6 +174,51 @@ public class SetupDataFragment extends Fragment implements Parcelable {
|
||||||
mPolicy = policy;
|
mPolicy = policy;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the service info for the incoming protocol
|
||||||
|
* @param context For resolving the service info, and possibly loading the {@link HostAuth}
|
||||||
|
* @return service info object
|
||||||
|
*/
|
||||||
|
public EmailServiceUtils.EmailServiceInfo getIncomingServiceInfo(Context context) {
|
||||||
|
if (mIncomingServiceInfo == null) {
|
||||||
|
mIncomingServiceInfo = EmailServiceUtils.getServiceInfo(context,
|
||||||
|
getIncomingProtocol(context));
|
||||||
|
}
|
||||||
|
return mIncomingServiceInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the protocol as previously set in setIncomingProtocol, but don't attempt to look at
|
||||||
|
* {@link #mAccount#hostAuthRecv }
|
||||||
|
* @return Protocol string
|
||||||
|
*/
|
||||||
|
public String getIncomingProtocol() {
|
||||||
|
return mIncomingProtocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the protocol as previously set in setIncomingProtocol, or from
|
||||||
|
* {@link #mAccount#hostAuthRecv}. Try not to call this on the main thread if it's unlikely that
|
||||||
|
* the hostauth isn't already loaded.
|
||||||
|
* @param context context to possibly load the {@link HostAuth} from the provider
|
||||||
|
* @return Protocol string
|
||||||
|
*/
|
||||||
|
public String getIncomingProtocol(Context context) {
|
||||||
|
if (mIncomingProtocol != null) {
|
||||||
|
return mIncomingProtocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
final HostAuth recvAuth = mAccount.getOrCreateHostAuthRecv(context);
|
||||||
|
return recvAuth.mProtocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIncomingProtocol(final Context context, final String protocol) {
|
||||||
|
final HostAuth recvAuth = mAccount.getOrCreateHostAuthRecv(context);
|
||||||
|
recvAuth.setConnection(protocol, recvAuth.mAddress, recvAuth.mPort, recvAuth.mFlags);
|
||||||
|
mIncomingProtocol = protocol;
|
||||||
|
mIncomingServiceInfo = null;
|
||||||
|
}
|
||||||
|
|
||||||
// Parcelable methods
|
// Parcelable methods
|
||||||
@Override
|
@Override
|
||||||
public int describeContents() {
|
public int describeContents() {
|
||||||
|
|
Loading…
Reference in New Issue