为什么窗口管理器不能与现代设备一起使用

时间:2018-12-19 13:30:38

标签: android android-studio android-windowmanager

require_once __DIR__.'/../vendor/autoload.php'; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing; use Symfony\Component\HttpKernel; function render_template(Request $request) { extract($request->attributes->all(), EXTR_SKIP); ob_start(); include sprintf(__DIR__.'/../src/pages/%s.php', $_route); return new Response(ob_get_clean()); } $request = Request::createFromGlobals(); $routes = include __DIR__.'/../src/app.php'; $context = new Routing\RequestContext(); $context->fromRequest($request); $matcher = new Routing\Matcher\UrlMatcher($routes, $context); $controllerResolver = new HttpKernel\Controller\ControllerResolver(); $argumentResolver = new HttpKernel\Controller\ArgumentResolver(); try { $request->attributes->add($matcher->match($request->getPathInfo())); $controller = $controllerResolver->getController($request); $arguments = $argumentResolver->getArguments($request, $controller); $response = call_user_func_array($controller, $arguments); } catch (Routing\Exception\ResourceNotFoundException $exception) { $response = new Response('Not Found', 404); } catch (Exception $exception) { $response = new Response('An error occurred', 500); } $response->send(); 不能在现代设备上运行,我不知道是什么原因,但是我在logcat中收到此错误

WindowManger

权限

Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?

WindowManagerService类

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

设备号public class WindowManagerService extends Service { WindowManager windowManager; RelativeLayout relativeLayout; WindowManager.LayoutParams params; @Override public IBinder onBind(Intent intent) { return null; } @Override public void onCreate() { super.onCreate(); windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE); LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); relativeLayout = (RelativeLayout) inflater.inflate(R.layout.activity_test, null); params = new WindowManager.LayoutParams( WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.TYPE_TOAST, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN, PixelFormat.TRANSLUCENT); windowManager.addView(relativeLayout, params); } }

在我将问题发布到此处之前,我通过Google在上面搜索了有关logcat消息的信息,但所有方法均无法正常运行,因此,如果对我的问题有任何建议,希望您放在此处。

0 个答案:

没有答案