小编Ste*_*hen的帖子

Android- Webview onPageFinished被称为两次

我有一项活动通过在网页浏览中显示重定向网址时拦截重定向网址来执行OAuth身份验证.但是,由于某种原因,onPageFinished函数以某种方式被调用两次,这真的弄乱了我的应用程序.这是代码:

public class WebViewActivity extends Activity {
private WebView gWebView;
final String REDIRECT_URI = "https://localhost:5000/receive_code";
final String CLIENT_ID = "can't post it here";
final String CLIENT_SECRET = "can't post it here";
final String SCOPE = "basic names genomes analyses";
Hashtable<String, String> riskPairs;

public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.webview);

    gWebView = (WebView) findViewById(R.id.webView1);

    gWebView.loadUrl("https://api.23andme.com/authorize/?redirect_uri="
            + REDIRECT_URI + "&response_type=code&client_id=" + CLIENT_ID
            + "&scope=" + SCOPE);

    Log.d("WEBVIEW", "got to webpage");

    gWebView.setWebViewClient(new WebViewClient() {

        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url); …
Run Code Online (Sandbox Code Playgroud)

android android-webview

23
推荐指数
3
解决办法
2万
查看次数

Android活动onCreate从另一个活动导航时被调用两次

我有一个应用程序,在用户在webview活动上使用OAuth进行身份验证后生成音乐,看起来像这样:主要玩家活动 - OAuth活动 - 回到主要玩家活动.但是,从OAuth活动开始,onCreate方法被调用两次,导致同时生成和播放两个音轨.以下是MainActivity代码的一部分:

public class MainActivity extends Activity {
int pitch=60;
private static final float VISUALIZER_HEIGHT_DIP = 50f;
Random rn;

boolean isRunning = true;  
boolean isPlaying=false;
SeekBar fSlider;
double sliderval;
MediaPlayer mediaPlayer=new MediaPlayer();
ImageButton startStopButton;
ImageButton stopButton;
SeekBar vSlider;
VisualizerView mVisualizerView;
private Visualizer mVisualizer;
ImageButton connectButton;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
   // point the slider to the GUI widget
    rn = new Random();
    fSlider = (SeekBar) findViewById(R.id.frequency);        
    fSlider.setProgress(0);
    vSlider= (SeekBar) findViewById(R.id.seekBar2);
    vSlider.setMax(10);
    vSlider.setProgress(0);
    TextView viewinterval=(TextView) …
Run Code Online (Sandbox Code Playgroud)

android android-activity

4
推荐指数
2
解决办法
9774
查看次数