Android:为什么启用蓝牙发现活动不返回onActivityResult?

时间:2014-10-06 00:38:08

标签: android android-activity bluetooth

我正在启动一项活动来启用蓝牙发现。我有一个回调onActivityResult,但是当弹出窗口出现时,无论我按“拒绝”还是“允许”,都不会被调用。

我只有一个主要活动,当用户按下按钮时会触发意图。

这是我的代码:

    // button press calls this

public void onStart(View v)
{
    if (bButtonStartPressed)
    {                   
        Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);

        startActivityForResult(intent, DISCOVERY_REQUEST);      

        changeViewState((Button)v, R.drawable.btn_on);          

    }
  ... other stuff...
  }

这是onActivityResult:

/*
 * Activity Result
 */
//@Override
protected void OnActivityResult(int requestCode, int resultCode, Intent data)
{
    super.onActivityResult(requestCode, resultCode, data);

    Log.d("OnActivity", "Result : " + requestCode + " " + resultCode);

    if (requestCode == ENABLE_BLUETOOTH)
    {
        if (resultCode == RESULT_OK)
        {
            ...do something...  
        }
    }
    else if (requestCode == DISCOVERY_REQUEST)
    {
        if (resultCode == RESULT_OK)
        {
            ...do something...  
        }
        else if (resultCode == RESULT_CANCELED)
        {
            changeViewState((Button)btnStart, R.drawable.btn_normal);
        }
    }       
}

你会注意到的一件事是@Override被注释掉了,因为当我覆盖onActivityResult方法时我得到了这个错误:

The method OnActivityResult(int, int, Intent) of type MainActivity must override or implement a supertype method

1 个答案:

答案 0 :(得分:0)

我是瞎子!

'o'应该是OnActivityResult()以上的小写。