ドキュメントなしで会社からプロジェクトを受け取りました。今、私はこのプロジェクトに新しい追加機能などのいくつかのものを追加する必要があります.しかし、私はこのプロジェクトがどのように構成され、どこから始まるのか見当がつかない.このようなプロジェクトで作業する方法を知っている人はいますか? シーマで解析できますか?
このアプリケーションの開始点を見つけるにはどうすればよいですか?
AからZまでデバッグする方法はありますか?
ドキュメントなしで会社からプロジェクトを受け取りました。今、私はこのプロジェクトに新しい追加機能などのいくつかのものを追加する必要があります.しかし、私はこのプロジェクトがどのように構成され、どこから始まるのか見当がつかない.このようなプロジェクトで作業する方法を知っている人はいますか? シーマで解析できますか?
このアプリケーションの開始点を見つけるにはどうすればよいですか?
AからZまでデバッグする方法はありますか?
マニフェストファイルで主なアクティビティを確認してください。
他の人がAndroid固有の答えを口にするかもしれませんが、このプロジェクトを「レガシーコード」として扱うことを考える必要があります。これは、ドキュメントが不十分またはまったくなく、(最初は)どのように実装されたかについてほとんど考えられていない、他の誰かによって作成されたものです。
問題についてまともな本が必要な場合は、Feathersによるレガシーコードの効果的な操作を確認してください。また、Android固有ではありませんが、関連するのは、電子書籍「RailsRescue」およびRailsTestPrescriptionsの「LegacyCode」の章のアドバイスです。Railsに関連していますが、作成者が提供するアドバイスは、ほとんどのプロジェクトに直接適用できます。
一言で言えば:
最後に、コードを読んでください。あなたは弾丸を噛み、実装に慣れなければならないでしょう-それを回避する方法はありません。
アプリケーションの開始点(主なアクティビティ)は、マニフェストファイルにあります。
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
このインテントフィルターを持つアクティビティは、アプリのエントリポイントです。
Manifest.xmlで、<activity>
誰かが取得する必要のある行を確認してください
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
これはapkが始まるところです
onCreate()
次に、このクラスのメソッドから始めます。また、デバイスの起動時に開始される可能性のあるサービスを確認する必要があります。BroadcastReceiver
とこのようなものをチェックしてください
if("android.intent.action.BOOT_COMPLETED".equals(intent.getAction()))
JesperB が言ったように、マニフェストで start アクティビティを見つけます。
次に、アプリをデバッグ モードで実行し、アプリを使用するときにすべてがどこに向かうかをたどり、途中でメモを作成します。
ビュー階層ビューアーを実行してみると、何らかの方向性も示される可能性があります。