【发布时间】:2014-05-14 16:02:41
【问题描述】:
我的 startActivityForResult 函数有问题。
我有一个活动 MqttClientActivity
public class MqttClientActivity extends Activity {
static final int ACTIVATION_REQUEST = 47; // identifies our request id
private static Context context;
static DevicePolicyManager devicePolicyManager;
static ComponentName demoDeviceAdmin;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MqttClientActivity.context = getApplicationContext();
// Initialize Device Policy Manager service and our receiver class
devicePolicyManager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
demoDeviceAdmin = new ComponentName(this, DemoDeviceAdminReceiver.class);
}
public static void test() {
boolean active = devicePolicyManager.isAdminActive(demoDeviceAdmin);
if (active) {
//do something...
}
else {
// Activate device administration
Intent intent = new Intent(
DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,
demoDeviceAdmin);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,
"Your boss told you to do this");
startActivityForResult(intent, ACTIVATION_REQUEST);
}
}
}
我有这门课:
然后:
在后一个类中,我想在 messageArrived 函数中调用我的测试函数 (MqttClientActivity),我该怎么做?我已经将函数设置为静态,变量“devicePolicyManager”和“demoDeviceAdmin”设置为静态,但我无法启动 activty...
谁能帮帮我?
谢谢
【问题讨论】:
标签: java android service static android-activity