2014-11-15 2 views
0

Если вы хотите использовать Dropbox из приложения, вам необходимо зарегистрироваться в Dropbox, и вы получите приложение-ключ и приложение-секрет. Поскольку очень сложно защитить пароль и ключ от приложения из моей собственной учетной записи Dropbox, каждый пользователь должен зарегистрироваться в Dropbox. В приложении они должны ввести ключ и секрет в опции Dropbox.Программно модифицировать данные целевого фильтра

Теперь мой вопрос. Как я могу заменить программным образом данные фильтра намерения на реальное значение из параметров? Или это другой способ справиться с этим?

У меня есть следующие намерения фильтр в моем файле манифеста:

<activity 
    android:name="com.dropbox.client2.android.AuthActivity" 
    android:launchMode="singleTask" 
    android:configChanges="orientation|keyboard"> 
    <intent-filter> 
     <!-- Change this to be db- followed by your app key --> 
     <data android:scheme="db-xxxxxxxx" /> 
     <action android:name="android.intent.action.VIEW" /> 
     <category android:name="android.intent.category.BROWSABLE"/> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
    </activity> 

ответ

0

Потому что это очень небезопасно закодировать пароль и ключ в приложение от моего собственного счета Dropbox, каждый пользователь должен зарегистрироваться в Dropbox.

Если Dropbox действительно испортился, ключ API предназначен для разработчиков, а не для пользователей.

Как я могу заменить программную информацию данными фильтра намерения на реальное значение из параметров?

Вы не можете.

Или это другой способ справиться с этим?

Зарегистрируйте API-ключ и поместите ключ API, в котором Dropbox сообщает вам, чтобы он поместил ключ API.

Или, не используйте их API, но вместо этого попробуйте взаимодействовать со своим Android-приложением (например, ACTION_SEND, ACTION_OPEN_DOCUMENT).

+0

Проблема заключается не только в ключе APP, но и в соответствующей тайне APP, которую я должен использовать в приложении для авторизации. Как, если я запутываю код? Это безопасно? – egmontr

+0

@egmontr: «Как, если я запутываю код? Это безопасно?» - ваш ключ и секрет - это не код, а данные. Это не будет запутываться такими инструментами, как ProGuard. DexGuard будет, и для этого могут быть другие продукты. – CommonsWare

+0

Извините, я не упомянул, что секрет используется только в коде и ключе в коде и манифесте. ' final static private String APP_KEY =" xxxxxxxxxxxxxxxx "; final static private String APP_SECRET = "yyyyyyyyyyyyyyyyyyyy"; ' – egmontr

Смежные вопросы