Android上有多个为AuthActivity URI方案-Dropbox同步问题注册的应用程序
对不起,我的英语很差,而且我是Android开发的新手 我正在开发一个Android应用程序,它可以将数据发送到Dropbox的数据存储。我的问题是,当我的代码得到这一行时:Android上有多个为AuthActivity URI方案-Dropbox同步问题注册的应用程序,android,dropbox-api,Android,Dropbox Api,对不起,我的英语很差,而且我是Android开发的新手 我正在开发一个Android应用程序,它可以将数据发送到Dropbox的数据存储。我的问题是,当我的代码得到这一行时: mAccountManager.startLink(DropboxHelper.this,REQUEST_LINK_TO_DBX); 然后我的logcat向我发送以下消息: 10-19 10:40:32.411: W/com.dropbox.client2.android.AuthActivity(28381): The
mAccountManager.startLink(DropboxHelper.this,REQUEST_LINK_TO_DBX);
然后我的logcat向我发送以下消息:
10-19 10:40:32.411: W/com.dropbox.client2.android.AuthActivity(28381): There are multiple
apps registered for the AuthActivity URI scheme (db-qeojdcjk0dkkswc). Another app may be
trying to impersonate this app, so authentication will be disabled.
我发现的更接近的解释是:
但是这些评论对我没有帮助
这是我的代码:
public class DropboxHelper extends ActionBarActivity {
// *** Objects and APP_KEY + APP_SECRET are instantiate here ***
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dropbox_activity);
// Set up the account manager
mAccountManager = DbxAccountManager.getInstance(getApplicationContext(), APP_KEY, APP_SECRET);
mUnlinkButton = (Button) findViewById(R.id.unlink_button);
mUnlinkButton.setVisibility(View.GONE);
// Button to link to Dropbox
mLinkButton = (Button) findViewById(R.id.link_button);
mLinkButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if ( mAccountManager.getLinkedAccount() == null )
mAccountManager.startLink(DropboxHelper.this, REQUEST_LINK_TO_DBX);
else
{
Toast.makeText(DropboxHelper.this, "Connection déjà établie, vous pouvez vous déconnecter si vous le souhaitez", Toast.LENGTH_LONG).show();
mUnlinkButton.setVisibility(View.VISIBLE);
}
}
});
mUnlinkButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mAccountManager.unlink();
Toast.makeText(DropboxHelper.this, "Déconnecté", Toast.LENGTH_LONG).show();
}
});
// Set up the datastore manager
if (mAccountManager.hasLinkedAccount()) {
try {
// Use Dropbox datastores
mDatastoreManager = DbxDatastoreManager.forAccount(mAccountManager.getLinkedAccount());
mLinkButton.setVisibility(View.GONE);
} catch (DbxException.Unauthorized e) {
System.out.println("Account was unlinked remotely");
}
}
if (mDatastoreManager == null) {
// Account isn't linked yet, use local datastores
mDatastoreManager = DbxDatastoreManager.localManager(mAccountManager);
// Show link button
mLinkButton.setVisibility(View.VISIBLE);
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_LINK_TO_DBX) {
if (resultCode == Activity.RESULT_OK) {
account = mAccountManager.getLinkedAccount();
try {
// Migrate any local datastores to the linked account
mDatastoreManager.migrateToAccount(account);
// Now use Dropbox datastores
mDatastoreManager = DbxDatastoreManager.forAccount(account);
// Hide link button
mLinkButton.setVisibility(View.GONE);
} catch (DbxException e) {
e.printStackTrace();
}
} else {
// Link failed or was cancelled by the user
}
} else {
super.onActivityResult(requestCode, resultCode, data);
}
}
}
我不知道如何解决这个问题,如果你能帮助我,我真的很感谢你
致以最诚挚的问候。这通常意味着您使用同一应用程序密钥安装了多个应用程序。通常,如果使用应用程序密钥将SDK中的示例应用程序以及正在开发的应用程序安装在同一设备或虚拟设备上,则可能会发生这种情况。解决方案就是卸载其中一个应用程序,或者在其中一个应用程序中使用不同的应用程序密钥