2015-12-17 1 views
0

Я новичок в программировании на андроид. Я пытаюсь написать простое приложение, которое использует другое приложение для Android для переключения аппаратного переключателя.экранное манипулирование другим приложением android

Я написал код для запуска второго приложения. Теперь мне нужно нажать область с кликом в верхней части экрана в портретном режиме, а затем в результирующем экране коснитесь другой области, находящейся рядом с верхней частью в портретном режиме. Это переключит переключатель. На первом экране есть текст, сопровождающий интерактивную область, но на втором экране нет.

До сих пор мне не удалось выяснить, как получить доступ к текущему экрану второго приложения из моего приложения. Кроме того, мне нужно знать, как нажимать интерактивную область на экране из моего приложения. У меня есть SDK второго приложения для справки.

Оба приложения работают на Android-планшете. Я был бы очень благодарен, если бы кто-нибудь мог указать мне на некоторые интернет-ресурсы или какой-нибудь простой фрагмент кода, чтобы помочь мне понять, как выполнить эту задачу. (Я сделал свое исследование, но был новичком, его было трудно понять и реализовать быстро.) Кроме того, будут приветствоваться любые предложения или советы относительно более простого способа сделать это из моего приложения. Мне нужен этот код для работы на устройстве Android, которое не связано с ним.

Вот мой код до сих пор:

Manifest:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.me.testapplication"> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 

     <activity android:name=".MainActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 

MainActivity:

package com.example.me.testapplication; 

import android.content.Intent; 

import android.os.SystemClock; 

import android.support.v7.app.AppCompatActivity; 

import android.os.Bundle; 

import android.view.View; 

import android.widget.Button; 


import static com.example.me.testapplication.R.id.button1; 


public class MainActivity extends AppCompatActivity implements View.OnClickListener { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Button Button1 = (Button) findViewById(button1); 




    Button1.setOnClickListener(this); 
} 
@Override 
    public void onClick(View v) { 

       Intent launchIntent = getPackageManager().getLaunchIntentForPackage(package); 
       startActivity(launchIntent); 
    } 
} 

В Python, я могу просто использовать следующую строку кода, чтобы нажать на нужную область экрана, но я не знаю, как это сделать из моего проекта студии Android.

os.system('adb shell input tap x y') 

Любые указания на решение будут принята с благодарностью.

ответ

0
public void startNewActivity(Context context, String packageName) { 
    Intent intent = context.getPackageManager().getLaunchIntentForPackage(packageName); 
    if (intent != null) { 
     // We found the activity now start the activity 
     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     context.startActivity(intent); 
    } else { 
     // Bring user to the market or let them choose an app? 
     intent = new Intent(Intent.ACTION_VIEW); 
     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     intent.setData(Uri.parse("market://details?id=" + packageName)); 
     context.startActivity(intent); 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^