基本信息
源码名称:调用 android studio 生成的aar文件中的activity 示例项目
源码大小:10.89M
文件格式:.zip
开发语言:Java
更新时间:2016-05-16
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

android studio中的 android library项目生成的aar文件适合拿出来做开放sdk,让调用者拿来就用

本实例测试过程如下:

1. 新建module gamelistlibrary,选择 android library,然后 在其中新建 activity以及资源文件等(根据具体业务做即可),然后选中 gamelistlibrary项目,点击build>>make module 'gamelistlibrary', 这时会在gamelistlibrary\build\outputs\aar 目录下 生成一个 aar文件

2.将该aar文件 放入 调用项目的 libs目录,然后修改掉用方的gradle文件如下

repositories {    flatDir {        dirs 'libs' }}
dependencies {
    compile(name: 'gamelistlibrary-debug', ext: 'aar')
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:23.0.1' }


主要是增加
repositories {    flatDir {        dirs 'libs' }}

以及

compile(name: 'gamelistlibrary-debug', ext: 'aar')



3.最后 build>>make project出 apk文件后 即可成功调用gamelibrary中的activity(调用方法 详见核心代码部分)


package cn.zhaoyb.test;

import android.app.Activity;
import android.content.ComponentName;
import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.view.Gravity;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import com.example.administrator.gamelistlibrary.YppMainActivity;

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;


public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

    }
    public void goToActivity(View v){
        //方法一 可行
        try{
            Intent intent = new Intent(android.content.Intent.ACTION_VIEW);
            //这里的packetname 一定记住填写 掉用方的packetname 因为 aar最终会被合并到调用方的manifest文件
            intent.setComponent(new ComponentName("cn.zhaoyb.test",//packagename
                    "com.example.administrator.gamelistlibrary.YppMainActivity"));//classname//
            startActivity(intent);
        } catch (Exception e) {
            Toast.makeText(getApplicationContext(),e.getMessage() ,Toast.LENGTH_LONG).show();

        }
        return;
        //方法二 可行
    //        //此种方式 需要androidmanifest.xml添加相应的activity
    //        startActivity(new Intent(this,YppMainActivity.class));
    //        return;

    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        ((App)getApplication()).exit();
    }
}