Bir Android Chrome Özel Sekmesi ile bir OAuth2 akışı uygulamaya çalışıyorum ancak Chrome Özel Sekmesi 302 konumla aldığında uygulamam her zaman kapalı (kilitlenme yok)/Uygulamamın şeması.Android uygulamasına Chrome Özel Sekmeleri yönlendirmesi, uygulamayı kapatır
Ahref bağlantısı olan bir HTML sayfası oluşturup üzerinde manuel olarak dokunursam Chrome Özel Sekmesi, uygulamanıza doğru şekilde geçiyorsa.
Chrome Özel Sekmesinde sunucu 302 yönlendirme işleminde olduğu gibi özel uygulama şemamı doğru şekilde işlemez ... ama neden?
Bir stok tarayıcısında veya WebView ile aynı yönlendirme URL'sini denediğimde her şey çalışıyor. Bu uygulama, HTTP 302 koduyla alınan yönlendirme URL
Button btnChromeCustomTab = (Button) findViewById(R.id.btnChromeCustomTab);
btnChromeCustomTab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CustomTabsIntent customTabsIntent = new CustomTabsIntent.Builder().build();
String packageName = CustomTabsHelper.getPackageNameToUse(MainActivity.this);
customTabsIntent.intent.setPackage(packageName);
Uri theLocationUri = Uri.parse(URL);
customTabsIntent.launchUrl(MainActivity.this, theLocationUri);
}
});
AndroidManifest.xml
<activity android:name=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/filter_title">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myappscheme" android:host="oauth" />
</intent-filter>
</activity>
MainActiviy.java: Burada
benim şimdiki kurulumdurmyappscheme: // oauth? Code = 1234567 & state = t okenCheck123
build.gradle herhangi bir yardım için
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "de.myapptest.webviewtest"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.android.support:design:23.2.1'
compile 'com.android.support:customtabs:23.0.0+'
}
Teşekkür ...
Anladığım kadarıyla uygulamanız devam ediyor ve kapatılıyor, doğru mu? Logcat'ta alakalı bir mesaj var mı? Ayrıca, MainActivity.java kodunu gönderebilir misiniz? – andreban